Chaosforge Forum

  • August 12, 2022, 12:43
  • Welcome, Guest
Please login or register.



Login with username, password and session length
Pages: 1 [2] 3  All

Author Topic: Uniques/exotics/assemblies/artifacts test  (Read 17611 times)

tinyrodent

  • Elder Chaos Guard
  • Second Lieutenant
  • *
  • *
  • Offline Offline
  • Posts: 188
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #15 on: January 22, 2012, 17:13 »

It appears that neither OnPickup nor OnPickupCheck hooks are called for ammo items. I don't know why this would be...
Logged
Arch-Vile Major

Deathwind

  • Colonel
  • *
  • Offline Offline
  • Posts: 505
  • HMP Angel of Patience 0.9.9.4
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #16 on: January 22, 2012, 17:26 »

At least it helped me confirm the BA's requirements as it still has it's restrictions.

edit:
RFE: could we get some water, acid and lava patches in the test area?
« Last Edit: January 22, 2012, 18:11 by Deathwind »
Logged
v.997 [16/5/2/0/0]

tehtmi

  • Programmer
  • Local Inquisitor
  • Lieutenant Colonel
  • *
  • *
  • Offline Offline
  • Posts: 458
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #17 on: January 22, 2012, 18:16 »

It appears that neither OnPickup nor OnPickupCheck hooks are called for ammo items. I don't know why this would be...

Because you never pick up ammo items.  The normal pickup operation is overridden by adding ammo to existing stacks or making new ammo items as appropriate.  (As such, it is also good to be careful with OnCreate hooks for ammo items.)
Logged

Deathwind

  • Colonel
  • *
  • Offline Offline
  • Posts: 505
  • HMP Angel of Patience 0.9.9.4
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #18 on: January 22, 2012, 18:25 »

It turns out that this is a good thing as all monster drops get the same treatment, making a few former & vile packs on nightmare can fill the floor rather quickly,

RFE: any way to make killing the mastermind, apostles and JC not exit?
RFE: the levers unlabeled can make it a pain to make a specific setup. edit: didn't see the bit about int...
RFE: can we get a pillar or two? (for LOS AI testing)
« Last Edit: January 22, 2012, 18:33 by Deathwind »
Logged
v.997 [16/5/2/0/0]

tehtmi

  • Programmer
  • Local Inquisitor
  • Lieutenant Colonel
  • *
  • *
  • Offline Offline
  • Posts: 458
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #19 on: January 22, 2012, 19:15 »

Removing BF_BOSS from the end bosses should stop the game from ending with relatively little other impact.
Logged

tinyrodent

  • Elder Chaos Guard
  • Second Lieutenant
  • *
  • *
  • Offline Offline
  • Posts: 188
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #20 on: January 22, 2012, 20:07 »

RFE: any way to make killing the mastermind, apostles and JC not exit?

I couldn't reproduce this behavior. Spawned mastermind and killed, no exit. Is there a trick?
Logged
Arch-Vile Major

Deathwind

  • Colonel
  • *
  • Offline Offline
  • Posts: 505
  • HMP Angel of Patience 0.9.9.4
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #21 on: January 22, 2012, 21:10 »

give JC and the apostle a try
Logged
v.997 [16/5/2/0/0]

tinyrodent

  • Elder Chaos Guard
  • Second Lieutenant
  • *
  • *
  • Offline Offline
  • Posts: 188
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #22 on: January 22, 2012, 21:25 »

New playground zip uploaded to original post
Logged
Arch-Vile Major

Hamster

  • Elder
  • Sergeant
  • *
  • *
  • Offline Offline
  • Posts: 79
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #23 on: January 23, 2012, 02:21 »

Code: [Select]
He killed 0 out of 0 hellspawn. (-1.#IND%)Wrong percentage because of division by zero. Of course, that cannot appear in a normal game... But for modding and better looking mortem.
Logged

Game Hunter

  • Programmer
  • Local Inquisitor
  • Lieutenant General
  • *
  • *
  • Offline Offline
  • Posts: 1044
  • Looks like game to me.
    • View Profile
    • Channel, the Roguelike
Re: Uniques/exotics/assemblies/artifacts test
« Reply #24 on: January 23, 2012, 08:17 »

Code: [Select]
He killed 0 out of 0 hellspawn. (-1.#IND%)Wrong percentage because of division by zero. Of course, that cannot appear in a normal game... But for modding and better looking mortem.
This is technically a core bug, since that part of the mortem can't be rewritten by modders. Should be an easy fix on our end.
Logged
I'm just a dude playing a dude disguised as another dude.

Latest LPs: Angband, Delver

tinyrodent

  • Elder Chaos Guard
  • Second Lieutenant
  • *
  • *
  • Offline Offline
  • Posts: 188
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #25 on: January 23, 2012, 09:10 »

I'm kinda hoping for more sulf-sufficient modders and throwing fully-usable code at people won't turn them into that, after all.

I don't agree. Throwing fully usable code at people with the source included can do just that. At the moment there is very little mod source code available that will run on 0.9.9.5 without fixes. Even the simplest wiki examples don't work, and other offerings such as Dead Simple haven't been updated.

Meanwhile there are gigantic holes in the modding documentation including Generator, AI, User Interface, Core, etc. Some stuff can be reverse engineered but not easily.

The changelog refers to two additional module types "Episode" and "Total conversion". What are the details of these?

Is it possible to make a mod which is simply DoomRL + added features? For example a new challenge; or smarter enemies; or additional badges; etc.

What are the plans for modding in 0.9.9.6 and beyond?
Logged
Arch-Vile Major

Game Hunter

  • Programmer
  • Local Inquisitor
  • Lieutenant General
  • *
  • *
  • Offline Offline
  • Posts: 1044
  • Looks like game to me.
    • View Profile
    • Channel, the Roguelike
Re: Uniques/exotics/assemblies/artifacts test
« Reply #26 on: January 23, 2012, 10:57 »

Meanwhile there are gigantic holes in the modding documentation including Generator, AI, User Interface, Core, etc. Some stuff can be reverse engineered but not easily.
This is part of the work I'm doing for modding in 0.9.9.6: getting stuff properly documented. Besides the lua code, there's a lot to sift through and understand on the FPC/valkyrie side, and so it's a pretty big effort. I will REALLY try to accomplish this over the next couple of weeks (last week got bogged down by some feature additions and bug fixes).

The changelog refers to two additional module types "Episode" and "Total conversion". What are the details of these?
Total conversions aren't actually available yet: it'll take some pretty huge rewrites in the way that DoomRL loads mods (currently it's all game-side: TCs will let you customize all the menu options as well).

Episodes are basically a way of chaining levels together to form a group of levels, much in the way that DoomRL plays now (you're placed at Phobos Base Entry, then move to Phobos 2, then Phobos 3, etc). I will explain the specifics when I update the Modding:Module page. To be honest I don't know enough off-hand to explain it here, but I will make that page top priority.

Is it possible to make a mod which is simply DoomRL + added features? For example a new challenge; or smarter enemies; or additional badges; etc.
This is doable but not easy, at least at the moment. If you know how to make an episode then literally recreating DoomRL is real quick: as for the rest, in essence you're just altering hooks and/or prototypes, but doing this is often a pain. I don't think it'd be too hard to write some helper functions that make this more manageable for players. The exception right now is stuff like literally adding a challenge to the challenge list or badges/medals to their respective lists. Since mods don't reload DoomRL in its entirety, these cannot be altered: however, including challenge-like properties to an episode and granting the player badges/medals (which will appear in the mortem) can work.

What are the plans for modding in 0.9.9.6 and beyond?
For 0.9.9.6, not a lot! This is because the graphical version is at the highest priority for Kornel, and he often takes care any and all API. Still, I think something I can do is provide a better ease of use for the modding system (such as the aforementioned helper functions). Since there aren't many changes, too, this gives me the opportunity to actually update the modding docs and tutorials, which (as you pointed out) are pretty badly outdated.

After that, I'm pretty sure 0.9.9.7 should have total conversions ready. I'm not entirely sure other than this, but I'll bet the other developers have some ideas.
Logged
I'm just a dude playing a dude disguised as another dude.

Latest LPs: Angband, Delver

tinyrodent

  • Elder Chaos Guard
  • Second Lieutenant
  • *
  • *
  • Offline Offline
  • Posts: 188
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #27 on: January 23, 2012, 11:29 »

Thanks for the reply. What's the status of HereticRL? ;)
Logged
Arch-Vile Major

tinyrodent

  • Elder Chaos Guard
  • Second Lieutenant
  • *
  • *
  • Offline Offline
  • Posts: 188
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #28 on: January 23, 2012, 19:11 »

Ok I successfully made the mod work with either 0.9.9.5 or 0.9.9.6 by wrapping the proto references. But I've struggled in vain to find any way of properly detecting the 0.9.9.6 environment during module init:
Code: [Select]
local v
if (rawget(_G,"IF_FARHIT") == nil) then
v = 5
else
v = 6
end

module = {
    id          = "playground",
    name        = "Hell's Playground",
    author      = "tinyrodent",
    webpage     = "none",
    version     = {0,1,0},
    drlver      = {0,9,9,v},
    type        = "single",
    description = "Experiment with all weapons, armor, mods, and enemies ",
    difficulty  = true,
}

I believe what's happening is that the module init code is called more than once - and the early call doesn't have the globals such as IF_FARHIT set yet. A later call detects it properly. Is there another way to distinguish 0.9.9.5 from 0.9.9.6 during the early call? I tried all of the different globals and none of them seem to work.
Logged
Arch-Vile Major

tehtmi

  • Programmer
  • Local Inquisitor
  • Lieutenant Colonel
  • *
  • *
  • Offline Offline
  • Posts: 458
    • View Profile
Re: Uniques/exotics/assemblies/artifacts test
« Reply #29 on: January 23, 2012, 20:58 »

The module file is loaded in a fresh and separate lua system.  Since it is mainly intended to provide summary information before loading the module proper, it makes sense not to load the whole module and not to allow it to corrupt DoomRL's active environment.  What is included in a fresh lua system hasn't changed between 0.9.9.5 and 0.9.9.6 as far as I know.

It could be nice to allow a module to support more than one version... that can go in the wishlist but I doubt we'll see it for 0.9.9.6.

The only other way you might be able to distinguish between versions is using metatables to track the usage pattern of the fields, but I don't think that has changed either.

So, probably you'll have to deal with the version incompatibility message for now.
Logged
Pages: 1 [2] 3  All