• Do not use Works in Progress as a way of avoiding the releases system! Works in Progress can be used for sharing early betas and for getting suggestions for improvement. Releases of finished content are not allowed in this forum! If you would like to submit a finished addon, click here for instructions on how to do so.

Looking for feedback and advice

Status
Not open for further replies.

Hexagonal Donut

Smithy of the Void
So, I'm currently working on a little (actually, probably big) level that's basically going to be themed after a big chasm filled with all sorts of fiery hazards. I'm not going to divulge my full plans for the level yet (that'd be no fun), but I've run into a couple roadblocks in the process of making it, and I'd also like some feedback on a few aspects of what I already have.

The wad of what I have right now can be found here; the map is mapc1.

srb20000.png

(Not pictured: A little pedestal behind us containing all 7 chaos emeralds and a Super Sonic Transform sector, due to complications to be explained in a moment.)

To start with the things I'd like feedback on, the visual style, particularly lighting; the overall goal is to go for a darker setting, but this feels a bit weird since it's, you know, a level flooded with lava- thoughts on what I should do about it? (I'd also like feedback on the textures, excluding the previously-mentioned pedestal, which is a temporary measure.)

The next thing is one a bit less trivial, and actually the whole reason I started this thread in the first place- the level is set up so that, when the player enters the level, they are immediately transformed, by way of a Lua script, thus enabling it to be used as a Super Sonic level, which is the intention. However, I can't tell if it's because of poor execution or something else (probably the former), but it... doesn't work. At all. Hence the pedestal to act as a substitute.

From what I can tell, the linedef executor and trigger are set up correctly, so I'm thinking the problem's in the code, but SRB2's log isn't throwing any errors (I fixed the ones it did throw already), so I'm not sure why it isn't working. If someone could tell me what I'm doing wrong so I can fix it, that'd be awesome. (Watch, it'll be something stupid in classic Hex fashion.)

And yes, I'm aware you can walk through the back wall. I haven't added the thok barrier yet. :P

Thanks in advance.
 
Could we take a look at the Lua script? I'm not at a computer right now so I can't look in the file for it.
 
Here it is. (Yes, I know, a bit sloppy, I'm still new to the whole "Lua in a Doom game" thing.)
Code:
local function makePlayerSuper()
    for player in player.iterate do
        if player.mo.skin == "sonic" and not player.powers[pw_super] == false then
            P_doSuperTransformation(player, true)
        end
    end
end

addHook("LinedefExecute", makePlayerSuper, "SUPTRANS")
 
Here it is. (Yes, I know, a bit sloppy, I'm still new to the whole "Lua in a Doom game" thing.)
Code:
local function makePlayerSuper()
    for player in players.iterate do
        if (player.mo and player.mo.skin == "sonic")
        and not player.powers[pw_super]
            P_DoSuperTransformation(player, true)
            player.powers[pw_super] = 1
        end
    end
end

addHook("LinedefExecute", makePlayerSuper, "SUPTRANS")

Try this. I edited it in the quote. You originally had it saying "If you're Sonic and you're not not Super, do a Super transformation.", which equates to "If you're Super, do a Super transformation!". You also forgot to set player.powers[pw_super] as part of the action. If you only have P_DoSuperTransformation, you'll only do the action. You won't actually turn Super.
 
Last edited:
Try this. I edited it in the quote. You originally had it saying "If you're Sonic and you're not not Super, do a Super transformation.", which equates to "If you're Super, do a Super transformation!". You also forgot to set player.powers[pw_super] as part of the action. If you only have P_DoSuperTransformation, you'll only do the action. You won't actually turn Super.

I tested it, I'm not sure if it improved anything. I don't know if it's because the trigger sector is broken or something else. :\ (I should probably be using a "level load" lindef trigger, actually...)
 
I made a typo in it. There was a space between the " and the ) on the line that says if you're Sonic. If you just want Sonic to turn Super right away you should use a ThinkFrame hook with the same lines I put instead of trying to run a linedef executor. You made a typo as well. player.iterate should be players.iterate.
 
Last edited:
I made a typo in it. There was a space between the " and the ) on the line that says if you're Sonic. If you just want Sonic to turn Super right away you should use a ThinkFrame hook with the same lines I put instead of trying to run a linedef executor. You made a typo as well. player.iterate should be players.iterate.

The problem with using ThinkFrame is it'll transform Sonic all the time- which is not quite what I want. The intention was to automatically transform you once, and then you have to maintain a steady supply of rings throughout the level to avoid losing your transformation. (Hence why a Level Load linedef trigger would probably work better... no idea why I tried using a sector-based one.)

But other than that I'll fix the errors and edit it a bit.

EDIT: On further thought, a Level Load linedef executor would mean next to no compatibility with co-op, as it'd only execute once at level load and then never again, even if players die. :\
 
Last edited:
You don't even need Lua for this anyway. 7 emeralds and a Super Sonic transform sector will make you turn super.
 
You don't even need Lua for this anyway. 7 emeralds and a Super Sonic transform sector will make you turn super.

...I was considering just stick to that, but having it make a bunch of emerald sounds upon entering the level drives me insane (and I doubt I'm the only one), not to mention the semi-incompatibility with star posts.

Then again it's not like using a sector-based trigger will help any with that.
 
Yeah, the lighting isn't great.

When you have a light source like that, it's supposed to sink upwards diagonally into the upper ground. The problem is, as we all know, SRB2 isn't capable of diagonal lighting. I think the best you could do is make it so that the sectors closer to the lava have more lighting, and it gradually fades into a dark lighting the farther outward you go. You could also just make the entire room have one lighting and it wouldn't look exactly terrible.
 
Status
Not open for further replies.

Who is viewing this thread (Total: 1, Members: 0, Guests: 1)

Back
Top