#classic-doom-maps-mods
1 messages ยท Page 82 of 1
UT isn't the only game to use CTD as a shock mechanic.
And I'm not really making anything yet. I'm just figuring out what is or isn't possible, so I won't go in over my head.
neat.
I would say it's not a great idea to intentionally crash games unless it's something the player expects
I used to think otherwise but I was convinced after a long talk
(and it wasn't the only "don't do that" kind of thing I wanted to do)
it depends. if you're going for high-meta narrative (undertale, pony island, golem creation kit) - then it actually might be a twist. The problem is - this is zdoom engine we're talking about. it wouldn't be able to pick up at the specific spot from saved info right on launch. it doesn't have that functional built in
Yeah, GZDoom's not the right platform for that A large part of the developers' design philosophy is player control and comfort.
i mean if you REALLY want to get down to it - you gonna need to get down to code and code-in special loading procedure. it's doable.
heh. yeah this looks fine.
even though it is md2 format. still - works
tho pitch and roll do not work for some reason
@light prism also, so far from my conversion process it did turn out to be 1:1
at least when converting through 3dsmax > obj > fragmotion > md2
@shadow bone any idea why pitch/roll values don't do anything for these?
Actually now that i'm thinking about it. with visplanes and all - is there a "exclude from visplane calculation" flag anywhere? You know - like in quake map format - all the map detail which can generate shitton of unecessary bsp splits can be moved to detail brush and will not affect any calculation at all
o_O gzdoom tells me "USEACTORPITCH" is unrecognized. even though builder recognizes it just fine
oh, it didn't like that i had + before them
even though that's default flag syntax in decorate. this disparity is crap
MODELDEF is pretty widely considered crap, yes ๐
sick. onscreen detail compression got a substantial bump with simple addition of lamp posts.
nice
now can you imagine having to do all of those with 3d floors? ๐
i mean yes, you could use a single set of controls for a parallel sequence of them
but it would get messy and unnecessary very quickly
ya know, for some reason i keep thinking of this theme when i look at this. https://www.youtube.com/watch?v=ZZ1_-Kcjcg0
Outlaws Soundtrack - 02 - Sanctuary Developer(s) - LucasArts Publisher(s) - LucasArts Designer(s) - Daron Stinnett, Stephen R. Shaw and Adam Schnitzer Engine...
i hope this'll make player realize that he should scale hanging gauntlet and reach electrical station on separate hanging island (after he tries a door which says "no power")
idk this goes in here or showroom but, concept idea I've gotten from a comment from one of my videos from a while back
@inner fulcrum 'murica.
dat ass
Anhmmmmm
only fockin way to make these wires visible and also have them anchor around one edge was this.

this is why i wish we had angles to wall textures
so i wouldn't need to do shit like this
is there "always render" flag?
yes
in a sense, yes
RenderRadius
if you did RenderRadius 32768 it would basically be 'always render'
what do you mean 'angles to wall textures'
btw
you want your wires to hang at different angles/sizes without having to make new actors?
i alreaady did that as you can see
i have 3 wire lengths
the problem is - they are offset with wire center being at the one end. that way i can angle them more efficiently
rather than averaging center and then trying to balance 2 poles between wire
Hey guys how do i make a room
Thats the only canadian i tolerate
what about skallagrim? he has canadian passport as well
shame on you. https://www.youtube.com/channel/UC3WIohkLkH4GFoMrrWVZZFA he has one of the best sword/medieval stuff reviewer channels
as good as Ian with forgotten weapons
@haughty flower for something like a wire you can forego using models entirely and just rely on +ROLLSPRITE
which basically turns it into a flat planular model anyway
nah, i'm fine with models.
and this is the reason why
it has thickness. not much but still
that's what she said

@light prism only problem i encountered so far is that GZDB has 'spotlights', but i don't see them working
include gzdoom.pk3 in your base resources (dont load for testing)
make sure your gzdb is up to date
oh. wait. it just started. peculiar. i guess i did something wrong before
hm. doesn't pitch for some reason. hmm
ok nvm, it works
yeah, this is fine. tho i should see if i can mount a lightsource under a part of the actor at an offset
Okay, documentation is scarce. can i set dynamic light intensity from the acs?
oh, it's standardized there. thank you
from sanctuary to going home. this map starting to have feels.
ONE OF THE GREATEST HITS OF ALL TIME. KENNY G ....
@light prism ok wait, so on the dynamic lights, since special is 0 i just set it as SetThingSpecial(<tag>, 0, args ...) ?
because second argument is action num
yep
sweet. one more question. can i dynamically set brightmaps?
or rather enable/disable them?
you could make a version of the texture that has no brightmap
how can i switch between the textures on a model then?
this is specifically for street lamp
map contains a puzzle at the end of which player enables lighting
you'll have to create a seperate version with the brightmap set in GLDEFS
and energy
then either apply it as a second frame for your actor, or as a seperate actor that the first can morph to
second frame is probably easier
skin 1 "myskin_bright.png"
frameindex LITE B 1 0
Okay i see.
Now. from a bit more fancier features. Can i somehow move all the outputs from print and item/lock messages to some sort of text log. Say a text typer hud piece which is offset to the bottom-left and also displays previous messages?
you could make an array to hold messages
then send them there instead of printing
and have a function that prints updates from the array
other than that i dont know, there might be a way
@muted wing thank you, i'll check it out
Here's other question. Notice Color value. when i try to punch that into acs script - resulting value is bright-red rather than white
@haughty flower just note that it does not solve the text log, just how the array works
@light prism do i just type it blatantly as "#FFFFFF" ?
okay, i'll try that
now it's darkblue xD
SetThingSpecial(62, 0, "FFFFFF", 8, 32, 96, 0);
I don't even.
oh i think SetThingSpecial is probably messing with it
since it only takes integers its probably converting the value as a string into int
you might be better off figuring out zscript for spotlight control
no i mean light special
the color of the light when it's not string
and in the spotlight it is hex
then the value 16777215 should be correct since it is FFFFFF in decimal
and yet it sets it to bright red instead
im at work so i cant be super helpful
No problem, i'm just thinking out loud at this point
well okay it does at least switch state. but brightmap for some reason refuses to apply
placing it in brightmaps/auto also did nothing
pastebin modeldef & gldefs
@light prism https://pastebin.com/VAaEaZvi
change brightmap texture strtlmp2 { to brightmap texture "textures\models\strtlmp2.png" {
that worked. thanks a lot cat. now i just need to figure out light color
hol' up. what if it factors in alpha under RGBA?.... trying 4294967295
nope. still red.
FML
{
arg1 "Red"
arg2 "Green"
arg3 "Blue"
arg4 "Intensity"
}``` The fucking fuck
...works now
so. editor shows completely different arguments to that special. this is a crutch
I'm liking the gun spriting stuff
it reminds me of the 90s games
with the "good CGI then but terrible now" charm
even though I'm a filthy 2000 and beyond teenager.
Well, how do i put it. i am just one guy and i don't have enough time to actually pixelize these sprites more (edit jitter)
That wasn't a negative
if i had a bit of budget to dedicate more time to them - sure
i mean i got that, but it sure can be made to look a bit better
tbf it does depend on what chu want with aesthetics
right now i'm still in midst of figuring out if aesthetics work even
ooh, that's why it seems charming to me. It reminds me of the digitalized models from the likes of Fallout 1-2
scratching head
the thing is digitalized models in fallout 1-2 were still hand-fixed after the fact. mine aren't - they're raw straight from rendering through palette appliaction (batched) into the engine
'tis still charming, to me at least.
i should just use 3d models at this point. i already have them for poles, wires, street lamps, pump rotors...
Might wanna focus on what aesthetic yous goin for first
tho that would require to make lowpoly versions of this thing https://sketchfab.com/models/da90ddb1aeee4604b9efdac2acde3ab7
I call this - laserlock pistol. If in flintlock flint strikes steel lead while it locks - in this case a pulse of energy from capacitor uses laser to heat plasma which then gets dispersed out of the front, accelerated by small coil array. Laser gets pulsed only when trigger i...
Don't want models like Psychophobia
don't worry i know how to fit them properly
lol
for starters psychophobia doesn't have correct doom-gun lighting applied to it's models
so they end up looking out of place. not to mention texture detail is too high. along with polycounts
Basic tutorial which shows how to make doom-like sprites out of 3d models. Here are multiple sprites of hands:ย dl.dropboxusercontent.com/u/92โฆ Credits: Doom by ID software, credit for o...
Don't want monsters looking like this psychophobia model either lol
Even worse than the Risen3D models
@vocal crypt try nightmare 3d
๐
again. do not worry. it's not the fact that they use 3d models. it is the coherency of them with the rest of the set
problem is that usually these mods don't have resemblance of art direction to begin with
actually kdizd was decent(?)
here, as an example. these 3d model fit better due to aesthetic matching. of course this is bw aesthetic so eh
that's from one of my unfinished wads btw
bleh
I can't model sculpt for shit tbh
again. bleh. i still have about 70% of way to go before i could consider myself good modeler. i can do rigid bodies no problem. however with soft tissue - i start having a lot of problems
get bonus points from me doin it in Blender
I just did the only models I did in Sculptris
and mine just looked like a sphere withlegs
and moose's horn
i don't use blender.
i use 3dsmax. because you can actually do stuff in it. fairly quickly as well
gonna be honest, Blender's UI is complete arse.
it has gotten a little bit better since 2.68 but not by much. they did promise they'll redo it again in 3.0
It seems to mostly be for the programmers first
other way around. it was designed by a bunch of programmers with no regards to ux
oh
at least initially. as i said - it has gotten a lil' bit better. but eh
it is
and who is this Harley C person who lurks in here.
Sorry, mistyped a letter and left it there
yes, his actual name is Hrley
@light prism nah, you just adopted to the shittiness of it
any 3d workstation is going to be complex, no matter how you go about it
i on the other hand started from working with industry standard tools such as max and poser.
blender is modular and you can adjust it to the way you want to work
Yeah, max has much better UX all around
also i started from povray, which was fuckin' textbased
like 'add cube (coords, dimensions)'
AHAHAhahahahahahah. yeah, sure. SUUUUURE. I tried doing that for a week. Even started writing actually working mirror tools for it. then dropped all that shit because i realized that i can spend that time working for "Free as in freeloader" community, or i can actually just use max and earn proper money with it
you could probably write a script to generate the script for it
i mean this was like... 20 years ago
povray is hopeless
it was all that was available at the time
you know you could've always pirated softimage back then?
on my 2400baud modem
povray was in 2013?
great idea
actually no povray is a very old renderer suite
well now it's not those days anymore.
@light prism that's why you built connections with someone who had access to T1
and downloaded it proper
t1?
i was barely a teenager dude
I'm from the XP era so I have no clue how the 3.1-98 era works
or gatekeeping.
it works... by WINSOCK
sorry, no bells for me
right at the turn of the windows 95 osr1 microsoft shipped it with a critical network stack bug, which allowed, by sending just a few stray packets - to completely tank a target pc so it needed a reboot. the script kiddie exe to do that was called Nuke (i think) hence the term nuke <ip>
of course- script kiddies were as stupid back then as they are now, so suggesting to test it by nuking 127.0.0.1 was common practice.
yep
man i havent done any work on mods in a few weeks now
its either too much work or not work the payoff
i guess i did make a map last week
Can I possibly get help with getting the BFG sound to play? https://drive.google.com/file/d/17LxcZfSPF2InX_09LZHJVQYjO5Rf9jJ9/view?usp=sharing
does this require BD
It is BD
ah
you're just doing a simple sound replacement
which sounds are the BFG ones, name wise?
I mixed 20B with the 2016 weapons pack into one file and the sound doesn't play
@vocal crypt iirc it's BFGFIRE
RN I'm only seeing BCHARGE in your sound folder
Wait
It's in combat/weapons, which it's missing an E.
Though, I'm not sure I'm seeing it in SNDINFO
great, gonna have to scuffle in the weapon decorate.
well thank god it has its own decorate file.
I'll finish up SNDINFO tomorrow
also, nitpick, but scrolling through the weapons, most of them say shotgun
@vocal crypt Thanks for your help
yeah, that's the mod itself, the shotgun thing
Seems like a conflict of names
You definitely helped, SNDINFO was the problem
ahhhh home
Ah
So thanks for pointing that out
Hey all!
Is this the channel I should go to, if I have a tiny issue with GZDoom?
this is more for modding than technical issues but what is it
Yeah - I just didn't know which other channel to use. I figured the people in here might be the best to help me, in any case.
Well, basically, I like to bind weapons to keys surrounding WASD, rather than 1, 2, 3, 4, etc. - however, normally you can't bind the two shotguns to separate keys. I tried 'bind KEY "use supershotgun"' and similar in console, but to no avail. I figure it's probably possible, though, right?
Anyway, would be sweet if one of you know.
Hm. Maybe I was an idiot and forgot quotes T_T
Thanks ๐
Hm... it doesn't seem to work for me. Damn weird.
Could it have anything to do with me being on version g3.1.0 ?
no idea
Updating to the newest is not an option for me because of other reasons
i just did
Hm
bind c "use supershotgun"
give all
c
and it worked
i cant imagine thats a new feature
werx4me
Weird :/
Yup, works for me in the newest release too
I guess my question, then, is, how do I get 3.3.2 to work with the Steam overlay?
Hm, it works, but only when I add it as a non-steam game. Eh, nevermind, it'll do. I might fiddle with it some
Thanks for the help regardless ๐
๐
is it possible to make destroyable pickups like when you shoot the health bonus bottle it breaks and spills and you cant pick it up?
sure why not
i tried this but does nothing (the bon2 is just to see does it work i dont have the graphics yet)
add +SHOOTABLE
hmm
add +NOBLOOD to the flags
and in the first death frame put A_ChangeFlag("SPECIAL",false)
that will disable picking it up
Oh god
That feeling when you're making a map
and you get loads of ideas for it
But you focus way too much on the little details to actually make a fully functional map first
What are these things? They occasionally appear on my vertices.
But why are they visible only on a select few vertices?
those pyramids are visible in 3d mode on triangular shaped sectors
which can be sloped according to their vertices
no other sector shape can do that
Huh.
Is SLADE the only way to add custom textures into a wad?
There's other programs, but most are buggy and out of date
Slade is the most current and active one I think
If you're using .pk3 with gzdoom instead of .wad you can unzip it like a folder though, and work that way instead
Yeah, I'm using GZdoom
Sweet. If you're not targeting other ports (like vanilla or Boom or whatever), I'd recommend using .pk3 files then
They're much easier and more stable than .wad files
and you can work with them like a folder instead of using a special program like Slade
Hell, GZDoom can even load plain old folders if you want to work that way while testing, then make it a .pk3 when you're done
Make the entire map into a .pk3?
I'm going to despise STARTAN2 before I'm done with placing down the general layout of the level
I already despise it
So yeah
Plans for this level
a factory inside a volcano
A train station to break up the outer yard
Blowing up a hole on the ceiling of the volcano to drop down onto the roof of the factory
possibly even a small section inside a giant tunnel bore if I can get texture importing to work
I may be going in WAY over my head though
The map (s) would still be in .wad files inside the maps/ folder of a .pk3, but any custom textures and such would be in other folder namespaces. Check the zdoom wiki, there's a page on it.
"using zips in place of wads"
Righto.
Seriously though
A tunnel bore might be a pretty interesting idea for a Doom map
https://i.ytimg.com/vi/z38JIqGDZVU/maxresdefault.jpg
For inspiration
It's going to be a challenge to keep it from being cramped or linear
huehue
laugh as much as you want, Elon Musk's tunnel drilling company is named the Boring Company
Just for shits and giggles
Fairly sure you knew that already, but whatever
@remote coral basically you need to turn sectors to distinct triangles in order to use this sloping method. it is quite good actually, you can create highly complex ground curvature without even thinking about invoking "sector slope" line special
I saw that already, and noticed that it was quite effective.
I'm still having some issues with making ramps on a ceiling with complex building under it
I'm having a hard time believing that's from Doom
care to show a screenshot from closer up?
I know that realm667 is a good place for custom enemies (which I doubt I'll use), but what's a good place to get textures?
The stock Doom 2 textures are good, but they're often quite lackluster and don't fit what you're trying to achieve.
r667 also has texture packs in the vanilla style
ie 64x64 flats and 64/128x128 textures
I'll have to check that out too then.
Fuck me, that screenshot though.
Gotta love all these doom modders making me feel like a scrub.
Probably because I am one.
@haughty flower sorry to ping ya, but what sculpting program you use for teh models
@vocal crypt i don't sculpt. i use 3dsmax then i use substance painter. between the two there is enough flexibility to add desired detail
ah
that's why i still haven't progressed in living things department. ๐
I'm using Sculptris rip
the problem is that most of the sculpting tools are too slow
at least for my hardware
I just suck at model sculpting
3d coat and zbrush are for damn sure
my first model is still just a sphere with arms and legs
thing is - i can sculpt in 3dsmax but its active preview shaders are shit
gotta render to see what it'll look like fully?
so it becomes a guessing game at small enough detail
yeah. luckily quicksilver renderer is almost instant
tho results may vary
@light prism Cat you might wanna fix normals on these trees
Spherify them
@light prism https://www.blend4web.com/en/community/article/131/
granted any of the formats supports edited vertex normals correctly.....hm....i think md3 should eat edited ones no problem
what
i dont think theres much i can do about that
easily, i mean
i use sculptris for sculpting. its way better than blenders internal sculpt tools
Is there a wiki that explains all the actions sectors and linedefs can do?
There's seven different door buttons, and I have no idea what they do.
Thanks a bunch.
TI also L that I don't have to tag every single door I use.
That I can just keep 'em at 0, so they'll affect whatever sector is behind it.
What?
So I have two sectors, one has 229 (Carry East Fast) and the other has 244 (Carry West Fast).
So why is the sector with the tag 229 animated and the one with 244 isn't?
I feel like the best way to learn how action specials work is to just go through Doom's maps and open them in the editor
[15:04] Two Simple Eggs (Okkim): TI also L that I don't have to tag every single door I use.
you do have to do this if the map is intended for non-zdoom ports
It still seemed to work on GZDoom.
gzdoom is a zdoom-based port so yeah
i'm talking about the boom family (and maybe eternity as well, though that might support 0 = back)
Did vanilla doom require tagging backside sector actions like doors? I didn't think it did...
But it has been a while
Well I'm mostly just making these maps for my own fun.
And GZDoom.
So I don't know whether or not I should use the 0 tag trick.
If you're just targetting GZDoom it's fine
Right.
cali, vanilla did, "0 is the back sector" is a zdoom feature
Weird. I don't remember that at all lol
But it has been like 12 years since I mapped for vanilla
(which imo should only apply in zdoom hexen + UDMF for better compatibility but it is what it is)
Honest question though.
Why do people, whenever anyone talks about Doom mapping, they say Zdoom and practically never GZDoom?
force of habit
Because ZDoom is the granddaddy ๐
most people have been around from before gzdoom was the main port
there was a looooong period of time where zdoom's featureset was in-line with gzdoom's apart from hw renderer features
nowadays it'd make more sense to say gzdoom, yes, but it's hard to shake off a habit like that
It's not made my mapping journey any easier.
When I keep looking for answers to questions, and everyone talks about Zdoom
Not knowing whether or not it works.
i always assume that zdoom is equivalent to gzdoom unless context indicates otherwise
Yeah, just about anything that worked in ZDoom will work in GZDoom
I use them interchangeably when searching
So I got some textures from realm667 and imported them into my project.
When I compile the map, will it only contain the textures which were actually used inside the map, or will it cram everything in it?
I'd assume it doesn't.
It sounds like you're using the textures as an external resource (meaning the texture pack will need to be loaded with your map)
To my knowledge none of the map editors will just save whatever textures you used into your map wad
yeah
they're WADs, added through the "Add resource" button when loading/creating a map.
you'd need to move them textures into the map wad if you don't want to keep doing add resource button.
or if you don't want the user to download extra files for the proper experience.
How would I do that?
Using the SLADE 3 editor
You could be using XWE which is outdated af ๐
I was joking at that, lol
He might take it seriously
...what's XWE
and less clean than Slade 3.
oof
Anyway, SLADE 3 isn't hard. It's basically for moving / editing anything in the wad that isn't a map
It has a map editor, but it's inferior to GZDB
What do I do here?
"don't build nodes"?
Yeah
Nodes are what makes your map functional in the engine. Used to be you had to "compile" the map before running it. But GZDB is probably handling that for you, and if not then GZDoom compiles the map internally when you run it (just takes an extra second or so when loading)
do I make a WAD archive?
the texture pack is a wad too.
That's fine
he's saying open them both
kk.
they'll be in seperate tabs
Now, in theory you just copy all the contents of the texture pack, and paste them into your map wad.
But just in case something goes wonky, make sure to copy your map somewhere else as a backup
It's been a long time since I did anything with wads instead of PK3s
PK3s are so much nicer. You just drop stuff into a textures/ folder instead of having to worry about _pp and _tx markers and shit
Meanwhile I'm sitting here, not even sure what makes pk3's different from wads.
can make your life so much easier
wads are a binary format, meaning they need markers and things, which are annoying to deal with
Anyway, I got all my textures and the map loaded up in slade.
The thing is, I'm not sure if I'm going to use all of these texture packs.
Should I still compile them into one WAD for mapping?
You could just copy what you want to use
but if you don't know, then just copy it all and paste it to the end of your map wad
No, the markers too
I'm sure there's a guide for this somewhere so I wouldn't have to ask.
Those are what tell the wad "stuff between here is this type of file*
Also, when you paste, make sure the lumps that make up your map don't get split up. they need to stay in order
so if there are multiple PP_ENDs, I'll put all the textures between that and PP_START and only include a single copy of the PP_END and PP_START markers?
don't try to reorganize it. the texture wad should already be in the order it's supposed to be
without seeing it myself I don't know what you can rearrange or not
I mean there are multiple texture wads I'm trying to add.
And they all have their own markers.
hmph
Gah, I dunno.
Maybe
I can't remember if wads can have multiple texture namespaces
I'll try single markers first.
How do I know it works?
That all the textures appear in GZDB without issues?
Yes, they should appear without loading your extra resource (so make sure to disable the texture wads in the map properties/resources)
I didn't enable any yet.
So after I actually finish the map, I should just be able to recompile the wad in GZDB and get rid of the excess.
If I'm reading this right.
GZDB won't "get rid of the excess"
If there's textures you don't want to use, you need to remove them manually from the wad
Well that's just wonderful.
It's smart. It'd be really bad if GZDB deleted half a wad of textures just because the mapper didn't use them
Well if the mapper has compiled their map for public use, you'd think they want the unused textures brought in with the texture WADs to be dropped.
Then they remove them by hand ๐
Also, I think the markers need to be separate.
There's files named PNAMES that are different from texture pack to texture pack.
Lots of wads don't even include the texture packs, they just say "play this with the Blood Textures wad"
ยฏ_(ใ)_/ยฏ
Do I need the pk3 for that then?
lmao really Cali?
Yeah Zoop
Moreso in the 90's when a texture pack took 5 hours to download over dial-up or BBS.
So you didn't have to re-download it multiple times
It doesn't make sense to me that that isn't streamlined yet.
How would I even get the list of texture names?
Is that convoluted to do too?
Seriously, how do people even make maps with custom textures, knowing that they have to manually discard about 90% of the textures when there's only a handful of textures in a pack that they needed
The alternative is only copying in the textures you used instead of deleting what you didn't use
But yes, you need to keep track of it
But if I'm trying out different textures, I'd still need to have them in the wad to begin with.
...unless I just use the "Add resource" button for temporary use.
Goddamnit, why didn't I just use that?
These days no one really blinks at multi-megabyte mods so you're probably worrying about nothing.
I'm a bit obsessive about keeping files tidy.
Having a fuckton of unused textures in a file doesn't make sense to me.
The worst example might be in HDTF, where dataminers found literally gigabytes of completely unused assets.
don't think anyone's gon give a crap about file size unless your pk3/wad is like 5 gigs ๐
Eh, if I don't use many custom textures, I should be able to hand-pick them from the wads.
Still, thanks a million for all your help.
I may seem like completely braindead with my constant questions, so thanks for putting up with me.
no worries
It's a process learning new stuff, especially archaic crap like this
not very intuitive until you've been doing it for a year or so, lol
It's always weird to think about just how many sourceports exist for Doom.
I used to think a Doom source port was a port of Doom made on the Source engine, which made me even more confused
Like, why are there so damn many ports of Doom just for the Source engine
Lol de hek.
Anyway, back to mapping.
I read up a bit, and saw that there's multiple ways to get screenshake. But what's the best one if I want the screen to shake after pressing a switch (say, a detonator for a bomb)
the wiki lists four.
Probably Radius_Quake2 in an ACS script that triggers when you flip the switch
Cheers.
Right now I'm experimenting with what I can do with Doom mapping and scripting.
It's in preparation for the map.
Shame that the wiki page for it doesn't explain much.
I guess I'm just dumb.
it turns your radius into the Quake 2 video game /jk
Everything else I understand, but damrad and sound I don't get.
Does the quake damage the player, and can I make the quake silent?
The quake can damage the player, yes. If you don't want that, set it to zero
Sound can be "world/quake" if you want to use the default earthquake sound, or just "" to play nothing, or some other sound effect.
Thanks.
I've wondered how some levels
have a wall that's part of teh room
and when you trigger a script (I assume it's a script)
it has sectors for the "broken" wall
or something
Not directly, but you could call multiple short quakes with gradually decreasing intensity
Back to the scripting wiki to figure out how subroutines work in Doom then
Just do it in the same script
script "scriptname" (void) {
radius_quake2(0, 3, 5, 0, 256, "world/quake");
delay(5);
radius_quake2(0, 2, 10, 0, 256, "world/quake");
delay(10);
radius_quake2(0, 1, 20, 0, 256, "world/quake");
}```
A one-second (35-tic) quake that goes from intensity 3 to intensity 1
note, untested. I haven't written ACS in like ten years
If you wanted to get fancy you could use decrementing for loops or something
but it's not necessary
Oh god
hyuk
I set my Doom to fullscreen to record a quick clip
and GZDoom enabled motion blur
Possibly.
Throwing some issues I came across here while experimenting.
Unless I picked the wrong action, the ceiling crusher moves constantly up and down, but the floor crusher only moves up and stops.
I also found two floor actions, both of which push the player.
But one of them also has the texture moving.
Carry West Fast moves the player, but Carry East Fast moves the player and the texture.
If anyone wants to have a look, I can provide the wad.
Probably just picked the wrong actions. There's a lot and many are either duplicated or very close in name/function
Mostly because of backwards compatibility cruft
(Hexen uses slightly different action specials than Doom but ZDoom supports both, for example)
I think so, yes
Always make sure to check the ZDoom wiki pages, most of the classic stuff is pretty well documented
Seems like the action specials only has the actions for vertices, and none for sectors.
Vertices don't have actions, linedefs do
And sorry, I meant sector specials: https://zdoom.org/wiki/Sector_specials
sorry, meant linedefs.
As you noticed...
The east carry specials will also scroll the floor texture.
This is probably a holdover from something Hexen did
its for water ya mungus
Two Simple Eggs (Okkim): Back to the scripting wiki to figure out how subroutines work in Doom then
subroutines dont really exist in classic acs
the closest thing would be functions
gdcc lets you do subroutines though
three quake calls or... you could use QuakeEx with QF_SCALEDOWN
it really bothers me that quake intensities are integer
She's referring to using QuakeEx in your script instead of Radius_Quake2
https://zdoom.org/wiki/QuakeEx
Provides a ton more options, including a flag to make the quake die down smoothly instead of using multiple quakes like I suggested
Sorta understood what I'd need to do.
I just don't know what I'd do with the plethora of flags at the end and where I'd put QF_SCALEDOWN.
I'll fiddle with it.
See where in the command overview it says flags?
Just enter QF_SCALEDOWN in that argument
If you want to use flags in combination, put a pipe character between them
QF_SCALEDOWN | QF_SCALEUP
I'm not even going to ask what that is
It's actually pretty simple
QF_SCALEDOWN = 1
QF_SCALEUP = 2
QF_WAVE = 4
QF_WAVE | QF_SCALEDOWN = 5```
Do I leave a zero at all the other bracketed arguments if I don't use them?
Or just leave them off
it depends
So I don't add them at all?
If you don't need to use any of them
If you want to use one, all the ones before it need to be filled in
Kk
yeah, but you can drop trailing arguments for the most part
I'll prolly just use flags
except that some functions wont let you do that
So the others aren't in the way
Does the script editor show what errors it has?`
The editor is telling me I have 1 error.
But I don't know what it is.
you dont use the square brackets
the square brackets on the wiki represent an optional argument
like if it was Thing_DoStuff(tid, speed, [flags])
you could just do Thing_DoStuff(1, 16);
Well
the script works now
but the smoothing doesn't.
It stays consistently shaky throughout the script.
for uhhh three seconds?
Yes.
it's supposed to reduce from level 5 shakiness to no shakiness during that time.
compiled without errors.
judging from its position on the flags list it might be 2 but theres no guarantee, its safer to just use the text
And the shakiness smoothens out now!
hooray.
Thanks, @light prism!
I'm actually l e a r n i n g
@light prism oi, have you checked out that link?
i had a look but i havent done anything yet
https://youtu.be/HfkiKETTjDU mama mia
actors and weapons and items and such are 'state engines'
ie they are entites that exist within a serial state list
like 'spawn' 'see' 'death' 'pain' etc
there are two modern ways to go about writing that stuff
one is DECORATE, and the newer one is zscript
decorate looks like this
the scripting you do in gzdb is ACS, which are event-triggered world scripts
Right.
So I want to share my devmap with a friend.
But the wad I'm making my map in doesn't show in GZDoom.
How can I fix this?
I'm guessing it's because it's not replacing any existing maps?
@remote coral mapdefs
?
yep
So I found a pastebin link for a mapinfo file
But I found something that the video nor the wiki really explains.
`map MAP31 lookup "HUSTR_MAP31"
{
}`
lookup? HUSTR_MAP31?
lookup looks up from the LANGUAGE lump/DeHackEd strings table
I'm guessing I don't need to worry about it.
The wiki does explain this btw
HUSTR_31 in vanilla doom 2 translates to "level 31: wolfenstein" iirc
But what does a LANGUAGE lump/DeHackEd strings table do?
The language lump allows modders to provide translations for various things based on the users' system language
I can't be bothered to explain DeHackEd
nothing I have to worry about then.
Still, thanks.
one last thing, I can't seem to find the names for the doom songs for the MAPINFO file, no matter how hard I look.
Even the filenames on the Doom wiki aren't the right ones.
$MUSIC_RUNNIN, $MUSIC_STALKS, etc. is what you use for default doom 2 music in mapinfo
Thanks.
Well I managed to get the map showing on the list at least.
now to just actually try and get it working as the first map.
{
LevelNum = 01
skybox = SKY1
next = "MAP02"
sky1 = "SKY1", 0
cluster = 1
par = 30
sucktime = 1
music = "D_SHAWN"
}```
IS what I have currently.
Is the only way to get the first level as the dev level just having the map name MAP01?
Unless you also write an episode definition, yes: https://zdoom.org/wiki/MAPINFO/Episode_definition
Will the first episode specified in MAPINFO be automatically assumed by the game as cluster 1?
I'll try.
And hope that it's true.
Because if it is, I could just clear existing episodes, make a new episode and only include my map in it.
That would probably work, in my understanding
๐ค
There's its own cluster definition though.
...huh.
I'm... actually stunned that it worked.
What do i compile acs with, outside of the builder? there are several projects where i saw acs files general for the whole project
I just thought of something.
Why are there only blue and green armor as well as armor bonuses?
Where are the 10 and 25 armor pickups?
@haughty flower GZDB just calls acs.exe to compile scripts. You can do that as well, via the command line or even configure Slade to point at acs.exe, if you want to have scripts outside a given level
You just need to make them libraries and use LOADACS to have them run
It's really weird.
Not even realm667 has 10 and 25 armor pickups.
You'd think someone has made them already.
I'd do it if I had the attention span and skills in both scripting and spriteworking.
Well I did find a 10 armor bonus.
But the sprite looks a bit crummy.
no need to make one right now.
this is ZScript, by the way, not DECORATE
class ArmorBonus10 : ArmorBonus
{
default {
Armor.SaveAmount 10;
}
States {
Spawn:
BON3 ABCDCB 6;
Loop;
}
}```
well then
BON3 would be your new sprite
That didn't take long.
I did find 10 and 5 armor bonuses.
So they're not completely lacking.
If you like them functionally, then you can just change the sprites and keep the same code
are there any upsides of using zscript rather than decorate?
uh, all of them
like?
Like the ability to work with basically engine-level c-like code
Custom functions
event handlers
virtual overrides
Hm. So basically it is like quake-c?
Yes, that's exactly what it's based on, if I recall correctly
The cool thing is, all your DECORATE knowledge will still work in ZScript. All you have to do to convert DECORATE to Zscript:
- change
actortoclass - use a
defaultblock for actor properties - put semi-colons after every line
I'm either really crummy at Google-Fu, or that there really aren't tutorials for making custom pickups.
I don't get it.
I'd recommend starting here: https://zdoom.org/wiki/DECORATE
I'd say start with ZScript, but the documentation isn't quite there yet
But 90% of what you learn with DECORATE will apply to ZScript with a few tweaks anyway
So it's not an awful place to start

@shadow bone question. if i have something like this
TNT1 ABCDEF 1
{
//Do something
}``` will it execute the code within brackets on each frame? (a then execute again at b), just like decorate does with it's calls?
Yes, each frame
I'm sure that it's possible if I dig deep enough into how DECORATE works, but it still feels odd how there doesn't seem to be a single tutorial for it.
@remote coral You sound like you cannot be bothered lol
open up a wad which contains working decorate and look at it
I guess that's the best way to go at it.
Can you give an example?
Example map, I mean.
If you have one lying around.
also. i was digging a bit - it's quite fun how doom alpha hud eventually inspired Wraith of earth to actually make working version of it.
I love how old games used to have massive huds.
similarities are uncanny
Because there was just not enough power for fullscreen.
@remote coral also dude. come on. it's all there https://zdoom.org/wiki/DECORATE
A-ha.
I was just confused where the decorate files can be viewed/used.
I'm not a very smart man.
also most of the classes are on the wiki as well https://zdoom.org/wiki/Classes:GreenArmor
what you can do is you can inherit it and then just change Armor.SaveAmount to 5/10
I fucking...wait, does ACS STILL doesn't support strings as arguments?
@light prism you told me earlier that i can make a typer via scripting
There is retarded and then there is acs.
Ain't that the truth....
So basically. in order to actually create the typer i need to have a pre-defined string table. 
sigh
this is 3rd time i'm this close to the just snapping and moving everything to unity
last time it was homage to wraith of earth, time before that - eques virtute.
You have no idea how long it took for me to make this plank
This one
singular
plank of wood
That's a prime candidate for a decorative 3D model ๐
that's basically what it is.
I'm planning on hiding a soul sphere in the middle of some shipping crates, and that acts as the method of getting out
It looks even better underground
yes.
That's good if you want to be able to walk on/up it. For pure decorations, you might find your life easier actually importing 3D models, if you wanted to take the time to learn
Slopes are useful, but they're tedious for detail work
Makes sense.
[17:37] smoke_th: I fucking...wait, does ACS STILL doesn't support strings as arguments?
ACC doesn't, there are other ACS compilers that do
gdcc-acc allows you to put str as the argument type (though i don't think it's strongly typed, still)
and gdcc-cc is full-on C so i'd assume it lets you do that since C has strings
though admittedly i wouldn't be able to tell you the specifics of that since I haven't had a need for gdcc since ZScript was invented, which was fairly shortly after i joined the community
like, half a year or so after
@light prism uses gdcc iirc, they might be able to tell you
Dude
Stop fidgeting with map secrets
You haven't even finalized the layout yet
Wait, how did you make an area of a map a secret again?
It should just be a flag in the sector properties, I think
found it.
I have no idea why I didn't see it in the generalized effects.
It's not in the specials list either, it has a flag ID of 1024.
At least it's easy to remember.
Those wooden planks remind me of the training mission in Conflict Desert Storm lmao
Can you assign multiple tags to one sector?
I'm especially curious because the properties menu shows specifically "Tag 1".
I guess I saw incorrectly.
I had tried it, but only thought it only gave a new tag for tag 1.
Uh...what is BCS?
in what context?
in zdoom modding context
@shadow bone is bcs just for zandronum? it has definable enums, which are absent from acs compilation
bcs is a language
and the source ports don't read the language
they read the acs bytecode
so any language that has a compiler to ACS bytecode can be used in any ACS-compatible source port
it looks like BCS is just an extension onto ACS' feature set
odd thing is that gzdb kinda refuses to compile it, but instead of actual error message it just tells me that temp file is missing
oh. i see. it just shits itself because of the wrong declaration but doesn't give the error line
smh can i somehow read last console message from acs?
gzdb's script editor's error box is defaulted to not shown for some reason, you have to click here to get it up
i know
that i already figured out
sigh guess i'm dropping lockdefs and tying every keyed door to ACS as well
ah great. i also cannot include a bcs file to a map script or switch map acs format to bcs
facedesks
well bcs uses a specific compiler, bcc
acc isn't going to support it
and gzdb ships with acc
nevermind, it does come with bcc. i'm having different problem right now - goddamn thing refuses to compile - tells me #library must come before anything else.
when it does
Okay it needed to be #import, not include
seems to compile now...?
great, it even picked up library named functions
@light prism Cat, i need your help. do you have any clue how typedefs work in bcs?
i'm mostly interested in structs and gauging info from one struct
or even general structs
Okay so this piece of shit compiles just fine when i compile library on itself
but when i try to target it from map specific script - it, for some retarded reason, assumes it's ACS and eats shit
it's been awhile since i've been frustrated so much on the retardation of tools
oh. wait.
i need to switch script type when i open goddamn thing
yeah, works perfectly fine now. ๐
I know that the entirety of the zdoom wiki has a fuckton of useful info
But as someone who hasn't looked up into coding in Zdoom (or doom mapping in general), I feel so lost
uh. if someone is at zdoom discord, can you invite GZDB_Bugfix developer here? As well as BCS compiler developer
i'm having some diffuculties and information is scarce.
struct MessageObject objMessages[ 64 ];``` this works
```c
struct MessageObject objMessages[ 64 ] = {
{ "A", "B", "C" },
};``` this doesn't and it shits at me that error: initializing struct member of string type
how the hell do i even define array of structs then
however this shit does c struct MessageObject objMessages[ 64 ] = { { 1, 2, 3 }, };
I fucking.....what
I don't know what the problem might be, but I do know strings are second-class citizens in ACS and derived languages. That probably has something to do with it
does gzdb even support it?
I'm not sure.
But you don't need GZDB to make/compile scripts
You can compile them externally and import them to your map
It's an extra step but might be easier
ยฏ_(ใ)_/ยฏ
there's a configuration for gdcc-acc for gzdb, but not gdcc-cc
facedesks
(gdcc-acc is a mostly a superset of "normal" acs)
(gdcc-cc compiles C code to ACS bytecode)
does gdcc-acc support structs and struct arrays with strict string initialization?
i can say yes definitely for supporting structs, couldn't tell you for the second bit, never used it
gdcc-cc is C so i can tell you confidently that yes that supports that
And again, you don't need GZDB to compile / edit the scripts
but i can understand not wanting to use C, especially for map scripting
sigh
can i ask what exactly you're doing here? i know for sure i'm missing context
Making a message typer hud for player. Think press release doom alpha but fancier
like, what sort of messages?
doom delta (https://forum.zdoom.org/viewtopic.php?t=52262) does something like that already for pickups
Discussion about ZDoom
> acs hud
You have my pity
also yeah, why acs? do you care for zandronum compatibility?
Should really use ZScript then
tho i looked how Death & Decay does things - seems to be pretty straightforward for zandronum
i mean they have such a fancy shop hud. can't go wrong with that
yeah why are you even using ACS if this is for gzdoom? ACS-based modding has been practically dead for a while now (like, since the start of 2017 or so)
ZScript can do anything it can, including HUDs which would make this a ton easier
(doom delta uses a ZScript HUD for exactly this)
yeah last time i was doing large modding project was in 2014, so pardon my outdated knowledge
It's okay, everyone has their starting points
I still don't know how to do haven't myself done ZScript HUD stuff, but I know for a fact it's miles easier than ACS
SIGH. Alright.
Guess i'll switch to zscript then
hold up, does gzdb support it?
in the sense that you can place ZScript actors in-editor, yes
but gzdb isn't (and never has been) an all-around modding tool
use SLADE for that
I'm so confused right now. Do line specials support zscript?
no, you still use ACS for basic map scripting
full-on game modding is done with ZScript
like custom HUDs
and enemies
and menus
etc.
you would still use ACS to make a lift lower and print a message on pressing a switch, for example
Okay. can i then use zscript to throw that Print to a hud?
yes, but tbh i wouldn't exactly recommend trying to do what you're doing in ZScript first without any prior knowledge on the language
the first thing you should read is this https://zdoom.org/wiki/Converting_DECORATE_code_to_ZScript
the problem with ZScript is really that nobody's yet built an all-in-one tutorial that can teach you every area
and graf doesn't self-document the language, which has proved really annoying
Ok stop. I need answer for this specific question - how do i redirect Print() to a new area via zscript? Or rather intercept it completely and store print output to an array
or any output game throws at it for that matter. Prints, pickup messages, locked door messages
That's the only reason i was bothering with bcs
i don't think you can do that, least i've never seen it been done - how would you do that in this BCS?
Yeah, I'm pretty sure those messages are engine-level
well you could do that using ZScript too, i thought you meant intercepting existing stuff, which as cali says is engine-level and not passed to any callbacks
If it were me I'd start with an event handler that triggers on a world pickup and calls the HUD function.
there is a way to make a ZScript function accessible via ACS
using the ScriptCall() function in ACS
and a class with a static member in ZScript
are all these messages linked to actors?
@light prism all messages. Pickup messages are on actors. Door inaccessible messages are in lockdefs
because if they're just extended 'look'-style descriptions, you could fit them in the actors Tag field
rather than creating an array that you have to reference
that's hacky as shit
its actually less hacky than this method