#classic-doom-maps-mods
1 messages ยท Page 40 of 1
still
better then nothing, though I really had no problem with such
TBH, it should've been an option.
I just completed Beta 1.0 of my Doom 2 level
ok now I need to remember how to package this all up so I can do a release that avoids the Brutal Doom GZDoom error ect
I kno
i know how to fix it
Open the BD pk3 with 7zip, open blood.txt (preferbly with notepad++)
line 545 and five-sixty something, in the blood fadeout area replace the letter l with 1
so I tried placing a fixed version of the blood.txt file in a pk3 then tried to lod it after the brutaldoom pk3
it still gives an error.
So the only way I think to do this is going to force everyone who downloads this to take the fixed txt file and poverwrite the one in the brutaldoom pk3
how does zandronum's CustomMissile work
still not answered; reposting
eh, i might try looking it up on the forums
is there any way to remove existing playerclasses in gameinfo?
hold on, let me check TUTNT for reference
i need to use KEYCONF.
I need help fixing my SNDINFO
Um didn't Zdoom die
someone help I got dis in SNDINFO, yet no sound be playin
ak47fire "sounds/Weapons/AK47FIR.ogg"
Numbers..?
I'm conflicted with this mod thing
with the maps being community made, or made by myself, or some other shit
or just some class/wepaon pack
*weapon
or whatever
what wrong with you VEGA
D4D v3 Alpha 1's out.
brb stealing code
a new type of coding
in the past we got dehacked
and then DECORATE
and the newest one is Zscript
I think he rage quit
Is there a way to make some sort of shop thing ala Counter Strike?
Graphics specifically?
hmmm
I guess I should just do some leveling system then
unless you steal someone code
what about a leveling system instead?
oh yes that
yep, but you should get the idea how its done
k
now I'm stuck with trying to figure out making a custom hud
mostly just health and ammo count to yellow
like in CS.
let's just say Source version.
er
does anyone know how to make a custom hud
anyone know how to work a SBARINFO thting
@vocal crypt If you haven't been able to get it working by reading the SBARINFO wiki page, I'd recommend making a post on the ZDoom forums.
SBARINFO is pretty much a black art and I don't think many people here really know it
Be aware that SBARINFO is going to be deprecated in favor of ZScript soon, so probably shouldn't spend too much time learning it
Well, it won't go away or anything.
Just won't get much in the way of new features
I know how you feel though; I need to knuckle down and learn it myself
does Slade even support such
Not yet, but SLADE really only does syntax highlighting.
It'll edit the text lumps just fine
ZScript doesn't need to be compiled or anything. It's like DECORATE+ACS+++
I guess I'll just use the All Info Classic Hud as a base. Gotta make sure to credit the author tho by then.
For some reason, it's not detecting the texture for a defined font thing.
I guess I'll show some alpha release of that mod I kept talking bout. Unfortunately the HUD was copied and it seems to be nothing special except a class/weapon pack. Also you need to use Zandronum for this version.
awkward
might have to type IDKFA for weapons
your guns are either too op or under powered
grenades don't travel, they just get dropped
and why is the running speed the walking speed of classic?
there are literally some parts of the game that can not be reached at walking speed
Elaborate on the too op part
Also, IIRC, you have to hold down the fire button with the hand grenade
the default pistol you're giving me, I have to drain almost half of my ammo to take down an enemy
meanwhile the sub machine guns mow through like tissue paper
I played it for a bit and it feels a tad clunky,
Terrorist or CT pistol?
Especially the inconsistency in sprites,
the grenade launcher was what I ended up sticking to
But that's just me being really nitpicky about inconsistencies @vocal crypt
So the main problems are some guns are op and underpowered
The movement speed just feels like he's trying to stroll through mud without getting his pants wet...
And speed of person
Also, why are there two Counter Terrorist and Terrorist classes @vocal crypt
The only real word I can use to describe it is halfbaked, especially for an alpha.
Hopefully that didn't come off as rude @vocal crypt
Two of the weapons don't make a sound and mostweapons use the classic DooM "center" weapon placement and some use a modern "right handed" weapon placement.
Those two weapons wouldn't be the uzis would they?
Yeah, the Uzis are silent.
Also, if possible elaborate on the clunky part @prisma saddle
but seriously @royal wave , what weapons are OP and which are underpowered? You told me the Uzi's were OP and the pistol is UP
Sub machine guns
The sub machine guns
I don't know your mod like you do, so I can't tell you anything like you would expect
It is MP oriented
so
maybe it's OP against SP monsters, but not other playas
I don't know
we need testing
I guess.
I just realized, I could probably take a look through the DOOM2 base WAD and copy the elevator properties over to my elevator.
Theoretically, looking at different sidedef's attributes will help me learn more about how to construct levels.
Dunno why I say "theoretically", but yeah.
ffs
3d floors aren't working
or slope
What's happening
you know if you made a 3d slope your dummy sector square thing goes up and down, the other part is suppose to "slope"?
or *make
well they're just moving like they're seperate sectors and nothin else.
Well, that's interesting. Nothing in the attributes about elevators.
I'm tryin to make a slope
The only way I can think of how is to create a bunched-up staircase.
in UDMF format
Not only was I looking in the wrong sector, I had all the wrong things selected.
Ur such a silly goose pyrolex
may I ask, how the fuck does the line action work
I'm smart, I swear.
You basically have two sectors at different heights
No
One line
Then you specify if it's the floor or ceiling, and if the slope is in front or behind the line
Yes
how do you specify if it's the floor or ceiling
there are args for the special for that
args?
arguments
Okay, so my idea didn't quite work.
nvm apparently I figured it out
hmm, gzdoom apparently fixed the weird issues with portals and sound
that's cool, might actually motivate me to finish my map, lol
i've put it off for a few months now
Nice
I MIGHT have fixed some of the issues. Tell if there's still any balance problems.
and basically tell with constructive criticism.
I guess the next milestone is teh level up system
Won't be able to test till tomorrow.
also, does anyone know how to create a basic level up system or somethin
Might need help "decoding" said script
when the script has #define ZOMBIE_XP 2 does that mean for each zombie dude killed, 2 XP is added?
or is that 2 the number of the enemy?
er
its mean
zombie XP = 2
and yes it add 2 point
and in this case its add 2 xp
I like rick roll
I decided to add that as a joke/easter egg (tho it's not really one considering it's easy to find somewhat)
also, I'm finally admitting it, the code is too confusing for me.
the leveling up thing htat is
Also, guys, any other criticisms slash apparent bugs I didn't catch probably
With my mod?
@trim falcon how do you wrok that RPG script
infact, how do you even work ACS without GZDoom Builder.
you use ACC.exe
or GDCC-ACC.exe
GZDB uses it internally
but you can use it manually
slade has a button for it too,
but with slade you have to download it manually
download a manual ACS button thing?
the button's here
if you try to click it without an ACS compiler it will ask you to set one
you can use ACC,
but i'd recommend GDCC-ACC
yep that
gdccc-acc apparently doesn't have an executable that Slade recognizes or looks for.
I only use ACC
never tried gdcc and I don't understand the different between compiler
@vocal crypt http://i.imgur.com/a00m2aE.png
it won't show up, but you can still type it in
and it will work
@trim falcon honestly the reason i use GDCC is just because it's easier to find the newest version of, lol
it has some support for extra stuff, but a lot of it is pretty much useless doom modding wise
also, it won't allow you to do:
int hello = "hi";
which is perfectly valid in ACC
well in compiled ACS all strings are really ints
because thanks raven software
and because of that, acc allows you to put that line in and it'll work fine
gdcc-acc won't let you though
which is probably a good thing
also gdcc-acc allows this:
script "S_ChangeMessage_Arg" (str passedTransMsg) {
notice the str passedTransMsg
with ACC, script args need to be int
so that wouldn't be okay
with gdcc you can clear up confusion
with that
good
being able to pass a str to a function without using an int instead to exploit the weird ACS internals is a good thing
well pressing compile ACS apparently don't do shit
wait
nvm it did
what does ACSE mean?
It has DLE, but Discord excluded that fsr
(FSR = For Some Reason)
not sure
i mean looking at it overall GDCC-ACC is practically just taking ACS one step closer to C, lol
stuff like actual floats
as a data type
also, it seems the ACS "script" ain't working
does anyone know how to look at a ACS script?
because SLADE apparently can't
otherwise it just has something like
ACSel[
how do I get such.......
I'm gonna go on a limb and say you can't get the source code of another wad.
in that case
crap
depends
if the mod author exposes the source code
@vocal crypt this a wad or a pk3?
pk3
ok, what's the compiled ACS file's name?
dnd_menu
dnd_menu.o?
.lmp
oh k
so I'm screwed.
assumptions don't mean I'm quitting
is there a folder called something like "scripts", "acs_src", "source"?
so yeah I am screwed
doesn't appear to have a download
unless you mean wait patiently for it to release
which I can do, I don't have a deadline for my mod
@unreal oyster
Uh... that's kind of hard to pull off with doom
example ?
You know the joke "simpsons did it?"
Basically coming up with an original idea isn't easy because someone else has already done it
@trim falcon how does that RPG script even work?
Is it void which means it has to be activated via a linedef for example?
or somethin?
I use my icetrays to take apart me electronics to clean and mod them
#define SARGEANT_XP 5
#define IMP_DEMON_XP 10
#define CHAINGUN_XP 15
#define HISSIE_XP 20```
this define how much experience you got from a monster
That part I get.
#define STR_XP " XP"
#define STR_REACHED "You reached level "
#define OPEN_XP "XP: "
#define OPEN_LEVEL "Level: "
#define OPEN_FSLASH "/"
#define FONT_BIG "bigfont"
#define FONT_SMALL "smallfont"
#define CLASS_CLIP "Clip"
#define CLASS_SHOTGUN "Shotgun"
#define CLASS_BACKPACK "Backpack"
#define CLASS_CHAINGUN "Chaingun"
#define CLASS_BLUEARMOR "BlueArmor"
#define CLASS_ARMORBONUS "ArmorBonus"
#define CLASS_PLASMARIFLE "PlasmaRifle"
#define REWARD_2 "25 HP"
#define REWARD_3 "25 HP\nGained 100 bullets"
#define REWARD_5 "100 armor"
#define REWARD_6 "50 armor"
#define REWARD_7 "50 armor\nGained 50 HP"
#define REWARD_10 "50 Armor\nGained 50 HP\nGained plasma rifle"```
i dunno why he do this
but its say he want to make p-code smaller
and I do not know what p-code is
It seems the only "things" neccesary for my mod would be the STR_GAINED to FONT_SMALL parts
#define SCRIPT_XP 151
#define SCRIPT_CREDITS 154
#define SCRIPT_LOOP 150
#define OBSCRIPT_ZOMBIEMAN 201
#define OBSCRIPT_SARGEANT 202
#define OBSCRIPT_IMP_DEMON 203
#define OBSCRIPT_CHAINGUNNER 204
#define OBSCRIPT_HISSIE 205
#define OBSCRIPT_STEALTH_HISSIE 206
#define OBSCRIPT_STEALTH_BARON 207```
this is to define script number
some mod might clash if using the same script number
the 152 and 151 etc?
Is this script a (void) or a OPEN one?
#define KILL_X 0.5
#define KILL_Y 0.6
#define KILL_TIME 2.0
#define KILL_TYPE HUDMSG_FADEOUT
#define MISC_CREDITS "This modification uses jallamann's\
\nexperience and level script.\n\nfor more info, see www.nightmaster.net"```
probabably both
this one a new define, need to check at the bottom what its actually does
that, or just make em drop "Credits" to buy from a shop
which I still need to work on that
if it were to be like CS.
str gained = "";
int xp2lv[10] = {50, 125, 250, 450, 675, 900, 1200, 1500, 2000,
2500};```
declaring a value
the int part?
yes
you start with 0 xp
level 1
and the next level is 2
100 hp
I not sure what is ar
in xp2lv probably the xp you need to level up
hmmm
50, 125, 250
either a level up system, or make some weapons expensive with currency wise.
Maybe I just need to understand the damage aprt better of weapons.
{
// experience and level screen refresh loop
SetFont(FONT_BIG);
HudMessage(s:OPEN_XP, d:xp, s:OPEN_FSLASH, d:xp2lv[lv+1];
HUDMSG_FADEOUT, 1, CR_BROWN, 0.99, 0.70, 2.0);
HudMessage(s:OPEN_LEVEL, d:lv; HUDMSG_FADEOUT, 2, CR_BROWN, 0.99, 0.75, 2.0);
SetFont(FONT_SMALL);
Delay(1);
Restart;
}```
obviously a looping script
what it does is constantly write something on the hud
the font set to big
hud message
is obviously hud message
HudMessage(s:OPEN_XP, d:xp, s:OPEN_FSLASH, d:xp2lv[lv+1];
what it say is "XP, / ,and I not sure what is d:xp2lv[lv+1];
in other words
its write "XP/12093i12"
fadeout probably fadeout
font small is small
delay 1 tick
restart is rinse and repeat
anyone know if x[y] = x*y ?
{
if(xp >= xp2lv[lv+1])
{
xp = 0; // reset xp counter
lv++; // increase level by 1
ACS_Execute(SCRIPT_REWARD, 0, 0, 0, 0);
}
}```
obviously when a monster die
it will execute script_reward
{
switch(lv)
{
case 2: // 25 HP
hp += 25;
gained = REWARD_2;
break;
case 3: // 25 HP + Some bullets
hp += 25;
gained = REWARD_3;
GiveInventory(CLASS_CLIP, 100);
break;
case 4: // Shotgun
gained = CLASS_SHOTGUN;
GiveInventory(CLASS_SHOTGUN, 1);
break;
case 5: // 100 Armor
gained = REWARD_5;
ar += 100;
break;
case 6: // 50 Armor
gained = REWARD_6;
ar += 50;
break;
case 7: // 25 HP + 50 Armor
gained = REWARD_7;
ar += 50;
hp += 50;
break;
case 8: // Backpack
gained = CLASS_BACKPACK;
GiveInventory(CLASS_BACKPACK, 1);
break;
case 9: // Chaingun
gained = CLASS_CHAINGUN;
GiveInventory(CLASS_CHAINGUN, 1);
break;
case 10: // 50 HP + 50 Armor + Plasma rifle
gained = REWARD_10;
ar += 50;
hp += 50;
GiveInventory(CLASS_PLASMARIFLE, 1);
break;
}
SetFont(FONT_BIG);
Print(s:STR_REACHED, d:lv);
SetFont(FONT_SMALL);
HudMessage(s:STR_GAINED, s:gained; HUDMSG_FADEOUT, 0, CR_GOLD, 0.50, 0.55, 3.0);
// [Doomguy0505]: This won't work, and I can't find a
// workarond because there is no PROP_HEALTH
SetActorProperty(PlayerNumber(), APROP_HEALTH, hp);
TakeInventory(CLASS_BLUEARMOR, 999); // take all armor
GiveInventory(CLASS_ARMORBONUS, ar); // give max armor
Delay(1);
gained = "";
}```
depend on which case/lvl you gained
you will get that reward
some text got written
setactorproperty will set a new set of hp for the player
take armor and give armor
Well apparently the scripts don't work.
I mean in gzdoombuilder
wait
you need to use in a map
or make the script global
oh wait
yep its not working
its was working in eons ago
eons?
in the past
oh
hmmm
perhaps I should just skip out on the level system then.
That, or adjust the weapons damage so it's not biased/unbalanced
well you know why its not work
you need to put ACS_Execute(scriptnum,0,0,0,0)
in your death state
wait
I'm thinking of the player's death state
TROO I 8
TROO J 8 A_Scream
TROO K 6
TROO L 6 A_NoBlocking
TROO M -1 ACS_Execute(scriptnum,0,0,0,0)
Stop```
the scriptnum is the number of the script
is the TROO just an example name for teh thing?
in the c onsole?
puke <scriptnum>
*console?
hmmm
what about the part of gaining XP from an enemy?
or rather the code?
Might try to edit it for player deaths or something
{
xp += ZOMBIE_XP;
HudMessage(s:STR_GAINED, d:ZOMBIE_XP, s:STR_XP; KILL_TYPE, 0, KILL_COLOUR, KILL_X, KILL_Y, KILL_TIME);
ACS_Execute(SCRIPT_XP, 0, 0, 0);
}```
this is zombieman script
we have define it as number 201
what is the d: in the hudmessage?
whats your say Gut since you're typing.
wut, why #define numbers as constants when you could just use strings for your scripts
hmm
i haven't really been following, what are you trying to do?
- Try to make a new script that's orthodox for Zandronu-
Making a level system so people don't duke AK47s in round 1
or rather grenade launchers
but then again
currency system might make that useless
even then, I sitll think the guns in my mod are unbalanced.
you can always steal doom rpg code
except the ACS source code isn't on the web
i wouldn't, that code looks pretty annoying to work with
plus, technically I've already "stolen" the weapons from Realm667
or
I'm not even sure if it is stealing or not
maybe it's a resource depot
I don't know
realm667 is free to use stuff from (that's what it's for!) but you should credit
realm667 includes detailed credits
for all their stuff
yeah I was thinking of credits for the help screen
you know
crediting peeps and all of that
TBH, I feel like this mod seems more suited for a collaberation or something
yeah, or just put it in a txt with the mod
but sitll
- Skip out on a leveling system entirely
- make a new level script that's orthodox for Zandronum anyway
- Balance the guns so having an AK47 at round 1 isn't OP and unbalanced
i mean, this is a counter strike mod, so why not just do a currency system
true
but the currency part I'm stuck at
should it be a dropable from the classes?
Should it be just something you get each round?
Hmmm
Usually I prefer 90% "accuracy" sticking to the source
buuut
with Doom engine's limitations even with ZDoom "innovation"
I doubt a currency system without the dropping thing is possible
wut
hell, Doom RPG has credits that drop when a monster is shot
yes it is
er
you can give credits based on stats at the end of a round
frags, bomb planted, etc
shit like that
oh crap I forgot the bomb planting thing
though it is based on the TeamLMS gamemode thing.
so
you should try play AOW on zandronum server
AOW?
all out war
i mean, for planting the bomb, you pretty much need a map designed for it
i mean, planting the bomb doesn't sound that hard, just create a weapon that drops the bomb as an item after holding fire down for a few seconds
you can probably code the whole "planting" thing in DECORATE, spawning the bomb object as an interactive item. Probably gonna need ACS to end the round and such though
then the bomb would be a usable item
and I presume holding E down for x seconds
which the other team can USE to defuse
then "Bomb has been defused"
yea
"Counter-Terrorists Win"
But let's not get ahead of our se-
hmm
bomb planting might be easier than the currency system for now
even then, I think I gotta work on weapon balance
...which requires actual playas on a server which requires a map suitable
I would think almost any DM map would be okay for bomb-planting gameplay.
Ideally you'd want to make it self-contained so it could be played on any mapset
self-contained?
The ACS and DECORATE and such being modular so the players can use any map they feel like
I want to make killin floor like mod
so Invasion gameplay with zombies?
but what think I need to do is
inb4 miniguns gunning down Headless Kamikazis
survival invasion like
oh
with doom monsters
that sounds possible
Stronghold!
Stronghold is too stressful to play
the reason i say bomb-planting would need maps made for it is because in CS, you can't just plant the bomb anywhere
So, right now the thing on my plate rn is a currency system, bomb planting, and a map that's suitable for such-
yeah, also that
there are a few sites where you have to put it
although, IIRC, you could in 1.6 and CS:S
rush b
Oooo!
Spawn some invisible points at the beginning of the round that "wander" the map, then lock their positions and have those be the bombsites.
why wander the map?
unless you mean the bomb plant anywhere
...which IMO seems unbalanced
But it's a 50/50 topic
Because you spawn them at some existing thing (like a player start) and then they move themselves around for several cycles to reach some random position.
this way the bombsites are always different
and a sprite will mark such?
Yep
Because if the bombsite is on a crate
Like a big A or something
we're gonna have probs
not really
That's why you make them playersized with the same step-up height
So they only reach places the player can
but how do we lock the player inplace for like 6 seconds?
NOOOO
a warm-up round then?
You can have it A_Wander instantaneously.
what's the A_whatever for locking it in place when x seconds have passed?
Look at the Caco example on this page:
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Because A_Wander is like A_Chase
but?
This makes the "movement" instant
oh
So it "wanders" but does it instantly
also, is it possible for a "monster" to have only one spr-
oh wait
I think so
Terry monsters anyone
I'm joking I'm joking
No plz
somemong
you could probably use an anonymous function now rather than AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
I love carn
just put A_Wander in a for loop
Right, but I assume this is DECORATE
yeah, I was using that
oh wait, this is targeting zand
urgghh zscript
yeah i realised that
you can in zand 4.0
yeah you probably would need the AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA stuff then lol
you mean 3.0 Erron?
the way i was thinking of doing it would be far more dumb, i was thinking just throw the actor off in some random direction at a ridiculous velocity and allow it to bounce on walls until it stopped, lol
Yeah, not necessary
Zdoom code is small
Source is always bigger than compiled
Well now I'm stuck on either getting to work on the bomb planting system, the currency system, or balancing weapons.
fuck it, bomb planting it is.
Since you can't balance without players
Now.
It would be a actor, no?
if we were to go with your idea of a "monster" wandering around when we start the game up?
yeah
is a_radiusgive a thing in zandro?
because what you could do is once the actor passes the AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA state it would give all players in radius an inventory item
I suppose the source file can be anywhere you want, as long as you #include it in the DECORATE file
bomb weapon checks for inventory item,
if it finds the item it jumps to the Dropping state or whatever
you mean the wandering bombplants?
yeah
they would settle down after the initial wander
it's nowhere near as balanced a system as custom-made maps specifically for the mod, but what can you do
tell them to go die like SrgtMarkIV?
I am kidding of course.
but I need to make a sprite for this actor
well, perhaps two actors
A and B.
maybe in BIGFONT...font?
for the wandering actors?
yeah
you wouldn't really need a sprite for them, apart from an indicator arrow
probably with +FLOATBOB
normal CS puts the bomb site indicator as a spray on the ground, but you won't have +FLATSPRITE
since it's zand
Offtopic but speaking of modding, check THIS out: https://forum.zdoom.org/viewtopic.php?f=37&t=54992
It's incredible
The monsters have a weight and presence I didn't know was missing.
well yeah i'd say it would just need to be an arrow floating in the air that bobs up and down
so yea
How much experience do you have with DECORATE?
I honestly don't know
I created classes
with sprites ripped from Skulltag.
(tho it was Strife and Doom64 guy sprites)
What do you mean by "created classes"? Can you show me a code snippet?
Or something?
Because I'm thinking this might be a little more complex than you're anticipating
@shadow bone that shadows thing is pretty cool, effect doesn't work too great with mouselook though :/
it billboards and it's quite noticeable when looking down
Well not really "created classes" but modified it from Zdoom wiki
so maybe?
IDK my experience level with decorate
{
Speed 0.7
Health 100
Radius 16
Height 56
Mass 100
PainChance 255
Player.DisplayName "Terrorist"
Player.CrouchSprite "D64G"
Player.StartItem "Glock18"
Player.StartItem "Fist"
Player.StartItem "Clip", 50
Player.WeaponSlot 1, Fist, Knife, Ghettoblaster
Player.WeaponSlot 2, Glock18,MicroUzi, DoubleUzi
Player.WeaponSlot 3, PumpActionShotgun, SuperShotgun
Player.WeaponSlot 4, M16
Player.WeaponSlot 5, HandGrenade
Player.WeaponSlot 6, M40Rifle
Player.WeaponSlot 7, BFG9000
Player.ColorRange 112, 127
Player.ColorSet 0, "Green", 0x70, 0x7F, 0x72
Player.ColorSet 1, "Gray", 0x60, 0x6F, 0x62 // Called "Indigo" originally so as to have a unique initial
Player.ColorSet 2, "Brown", 0x40, 0x4F, 0x42
Player.ColorSet 3, "Red", 0x20, 0x2F, 0x22
// Doom Legacy additions
Player.ColorSet 4, "Light Gray", 0x58, 0x67, 0x5A
Player.ColorSet 5, "Light Brown", 0x38, 0x47, 0x3A
Player.ColorSet 6, "Light Red", 0xB0, 0xBF, 0xB2
Player.ColorSet 7, "Light Blue", 0xC0, 0xCF, 0xC2
States
{
Spawn:
D64G A -1
Loop
See:
D64G ABCD 4
Loop
Missile:
D64G E 2
Goto Spawn
Melee:
D64G F 6 BRIGHT
Goto Missile
Pain:
D64G G 4
D64G G 4 A_Pain
Goto Spawn
Death:
D64G H 0 A_PlayerSkinCheck("AltSkinDeath")
Death1:
D64G H 10
D64G I 10 A_PlayerScream
D64G J 10 A_NoBlocking
D64G KLM 10
D64G N -1
Stop
XDeath:
D64G O 0 A_PlayerSkinCheck("AltSkinXDeath")
XDeath1:
D64G O 5
D64G P 5 A_XScream
D64G Q 5 A_NoBlocking
D64G RSTUV 5
D64G W -1
Stop
AltSkinDeath:
D64G H 6
D64G I 6 A_PlayerScream
D64G JK 6
D64G L 6 A_NoBlocking
D64G MNO 6
D64G P -1
Stop
AltSkinXDeath:
D64G Q 5 A_PlayerScream
D64G R 0 A_NoBlocking
D64G R 5 A_SkullPop
D64G STUVWX 5
D64G Y -1
Stop
}
}```
I know you said a snipet, but hey
So did you write that or just change some names?
Yeah, not my best decorate work
er
I'd say my decorate experience is crap
unfortunate.
honestly, dude - i don't want to sound too harsh, but since you don't know what i mean by +FLOATBOB, you might want to continue getting to grips with DECORATE before you jump in at the deep end, so to speak
Yeah... I was gonna say that
not harsh unless you say something amongst the lines of " you suck ass dude, learn DECORATE you fucking prick nubcase."
heh
FLOATBOB is an actor flag, you put +FLOATBOB or -FLOATBOB at the top level of an actor (with stuff like Speed, Radius, etc.) and it gives (or takes away) certain actor properties
in this case, +FLOATBOB causes the actor to bob up and down in the air
you'll also want to learn about action specials, which is what A_Wander falls under
Those are completely different
Yes
dsecription of a_wander says
yes. if you ever decide to start using ZScript, these are all done in a block called Default
Makes the actor wander around aimlessly, as used by Strife's peasants. An actor will not play active sounds, attack players, or attack any other target when calling this function, unlike A_Chase. A_Wander does nothing when the actor calling it has the STANDSTILL flag set.
on Zdoom WIki
in DECORATE flags and properties are just put in the top level
the STANDSTILL flag would be what I want when x amount of seconds have passed?
nah
Also, I'd probably use ZScript, but Slade 3 doesn't support it yet
so that's future mods
for zandronum, yes.
so to use +headbob it would be like
zscript is the present for gzdoom, lol
Actor blahblah {Speed:9000 +Headbob?
(Is it bad that I've known DECORATE like the back of my hand for so long, that I can't figure out how to explain the basic concepts to someone new to it?)
heh
decorate can be weird to explain, because it's not really like anything else
most similar language to DECORATE i can think of is honestly Assembly
well, and EDF
although that's sort of a given
and ZScript
a given again
but apart from those lol
Certain things are just so ingrained for me that I expect everyone to already have a grasp on them, lol...
I've tried working on maps, but I held off on them because they felt linear and un-doom like
so now I decided this mod finally
anyway
Something I'd recommend: don't dive into a mod of this complexity straight off.
Because it's gonna be hella complex.
First thing I'd recommend is coding your own simple monster from scratch, no copy-paste.
what about the sprite wrok tho
inb4 Commando firing plasma balls like chaingun speed
I did screw around with a arachnotron monster from Realm667
from changing it's attack thing
from a plasma thing to mancubus fireballs
hell, tried getting it to spawn BoH's.
but they'd died after spawning
;zdoomwiki_search "creating new monsters"
;zdoomwiki_search "creating new weapons"
While making a custom weapon in ZDoom is a bit tricky,
this guide should help you get on your way.
My point is that you shouldn't be modifying something existing
follow guides like these, they are provided by the wiki to help
although tbh that monster once doesn't really help much
Start by typing
Actor MyNewActor
{
}
Yep. Now start with https://zdoom.org/wiki/actor_properties
and figure out what you need to make it a monster
Then start adding states
hint: you'll likely want the Monster property, lol
you can technically add all the stuff that Monster adds manually and have finer control, but let's not get into that
what's the sounds the Zombieguy/Shotgunguy/Commando all share?
also so far
{
Health 325
Speed 50
GibHealth -1
WoundHealth 6
ReactionTime 8
PainThreshold 0
Radius 20
Height 16
Gravity 1.0```
er
I'm thinking that's copy+pasting
You don't really need all that stuff.
Ignore it.
Make a very simple monster which follows you around.
The magic is in the States section.
just put "Monster" in the properties area, then move on to States.
"Monster" is a flag combo
Sets the basic flags needed for AI.
For states, start with "Spawn" and "see".
That should be enough
Maybe "Death" as well
The point is, look at every line you add and think "What does this do? Why am I adding this?"
imma copy and paste existence monster in zdoom wiki
๐คฆ
yes I know you not suppose to do that
Yes
So
Actor Actorname
{
Monster //This is a "flag combo" keyword
States //actual actor logic goes here
{
}
}
No, because you have one bracket set to open and close the actor (the first/last) and the inner set will contain the states
So your actual states go inside the inner brackets
You can take a look at the monster code you posted before to see how this looks
so actor CommandoPlasmo { Monster {
with the close bracket things of course
also, would a simple monster following you around just use the A_Chase thing?
Yes. Look at the page: https://zdoom.org/wiki/Actor_states
Near the bottom is an example of a zombieman's states
... what's the commando's sprite name.
I can't remember. Just use the zombieman, POSS
k
{
Monster
{
Spawn:
POSS AB 10 A_Look
loop
See:
POSS AABBCCDD 4 A_Chase
loop
Pain:
POSS G 3
POSS G 3 A_Pain
goto See
Death: POSS H 5
POSS I 5 A_Scream
POSS J 5 A_Fall
POSS K 5
POSS L -1
stop
XDeath:
POSS M 5
POSS N 5 A_XSCream
POSS O 5 A_Fall
POSS PQRST 5
POSS U -1
stop
Raise:
POSS KJIH 5
goto See
}
}```
It feels like I just copy and pasted it only via typing it.
do you understand what any of those things do?
the pain thing is when you shoot it
See is when it sees you and chases you to kill you.
Spawn is basically looking for you.
Death is the dude's death.
XDeath I presume is gibbed death
I don't understand the raise part tho.
the numbers are the ticks or frames for each "sprite"
Raise is when an Archvile resurrects it
I suppose when I said "don't copy paste" I meant "look at the semantics of what this is doing but don't necessarily use it exactly"
Let's simplify:
did you want me to tell you what the A_ states meant?
or is that just too obvious in the name
ex. A_Chase
Here:
Actor NewActor
{
Health 10
Monster
States
{
Spawn:
POSS A 10 A_Look
Loop
See:
POSS A 10 A_Chase
Loop
Death:
POSS L -1
Stop
}
}
Put that in your DECORATE and run the mod
You can press "tilde" ( ~ ) to open the console and type summon NewActor
the summon thing I know
No
it does spawn
but it's dormatn
*dormant
and you can step on it
And shooting it does jack shit
wait
it does
but the sprites aren't showing
That's because I left out any animation frames
it doesn't move either.
We propbably need a speed property then
Try adding one and see if it moves around
Speed 8 or 4 should be enough
adding a speed does make it move
Cool, we're getting somewhere then ๐
It's probably kinda herky jerky though, right?
Partially. Also: look at the see state: We're only calling A_Chase once every 10 tics
A tic is 1/35 of a second, so he's only "chasing" (making an AI decision) about every 1/3 of a second.
Try making it so A_chase is called more often
so lets say POSS A nothing else ```POSS A 10 A_Chase```` then loop?
after the first POSS A A_Chase of course
Not quite. Change the duration (tics) to something like 2 or 3
you don't need a second A_chase ๐
oh
It loops, remember?
so the reduced number of tics makes the AI decide faster?
it makes that frame last shorter.
And the action special at the end of that line is what is performed on that frame.
christ it makes it go faster
Yup.
if it goes to 1 it'd be terry tier speed
You'll need to reduce the Speed property to compensate
speed of 4?
Perhaps. Or even 3.
the stock zombieman has a Speed of 8 and it calls A_Chase every 4 tics
now it moves at I guess a zombieguy's pace
oh
well it has 6 frames and moves now
wait
well not 6 frames
but
The Speed property is how many mapunits (distance) it moves per A_Chase "step"
so now it moves and dies
did you take out the "loop" keyword?
in the see part? no...
Okay, whats your code?
{
Health 10
Speed 4
Monster
States
{
Spawn:
POSS A 10 A_Look
Loop
See:
POSS A 2 A_Chase
Death:
POSS L -1
Stop
}
}```
I did have it in see
but I removed it
It needs A_Fall?
No
The state logic is like a program
So when it sees you with A_Look, it goes to See
But since there's no Loop instruction at the end of See, it continues to Death
He only has 10 health, so that's less than a zombie
Pistol does a random damage calculation, ranging from about 5-15 damage I think
Most weapons do
Also, the height seems to be smal
*small
since I have to kind aim around his crotch
what's the Zombo's height
Standard "person height" is about 56
just so I don't shoot through his torso literally
the height is in mapunits, by the way
So a zombo is 56 as well?
Yep
well now it chases you and dies when you shoot it with enough bullets
so
now what.
we get it to have death frames?
Can do that.
The POSS part is the spritename, and the A is the frame of the sprite to use
So for death, the zombieman's sprites are H I J K L
sprite L has the tic number of -1
Frames I mean
The -1 duration is special for death, means "stay on this frame"
you guys played Dead.Air yet?
you should check it out, it kicks ass
when shot dead
We're learning right now ๐
i just seen a video on dead.air
So, show me your Death state
idk if i want to play it now
H to L
i should hang out here more often
you should too scaryred24
H I J K L?
Yep
POSS H 3
POSS I 3
POSS J 3
POSS K 3
POSS L 3
Stop```
Looks good, try it!