#classic-doom-maps-mods
1 messages ยท Page 83 of 1
judging by the current list you have 'actorname' then 'actordescription'
No matter what you end up doing, it's gonna be hacky because you're relying on disabling the engine's built-in messaging and re-implementing it from scratch
Like, I don't even want to think about door messages
door messages could be done with https://zdoom.org/wiki/LOCKDEFS
He's doing a custom message typer, not just changing the messages
i already said i need them in a message typer
with regards to pickup messages, inventory items have a PickupMessage virtual function which you can override to return "" and do some other thing which will add to an array for printing on the HUD
which is what doom delta does
Yeah, that i figured out
doors, you're fucked with, the printing there is done completely internally with no such callback
in P_CheckKeys
unless he makes a generic door script that calls a string array
i am doing exacly that
Script "CheckForObject_TW2" (int objNum, int takeQuantity)
{
bool present=CheckInventory(objMessages[objNum].decorateName);
if(!present)
{
Print(s:objMessages[objNum].msgLacksObject);
SetResultValue (0);
}
Else
{
Print(s:objMessages[objNum].msgHasObject );
if(takeQuantity>0)
{
TakeInventory(objMessages[objNum].decorateName, takeQuantity);
}
}
}```
these prints are temporary while i'm building the hud
tho you know....weighting everything....at this point it's easier for me to just throw together a player motor on unity (or rather lift one i have from Impes) and just move whole thing to it either.
i have a python script that converts this to struct definitions
then each actor just references the position when picked up
i mean i was going for full on TC anyway.
not even quake, because i already tried screwing with quake extensively. that got me hitting my head about different host of problems.
i.e. tried porting TW1 to quake

Hm.
i guess i can at least finish 1 level in gzdoom and see where it goes from there
gzSim City
i don't even know now. it just tells me that script with that name not found in game
ok screw it. i'll redelegate custom typer to when and if i'll move this to unity3d.
i already lost 2 projects to ambition like this, i don't want anymore
๐ hang the fuck on.
this mod does it no problem
ok i need to take a look inside
oh man be careful with that
a lot of the code is extremely messy ๐๐ฆ
mostly because a lot of the code are from when I was learning zscript, so it was mostly me throwing things at the wall and keeping what doesn't cause an error
@past cradle i see you're overriding pickup messages in zscript
yeah
ever found a way to override door key messages?
well i just checked your RC and door messages appear at the old locations ยฏ_(ใ)_/ยฏ
found some code I did in another mod
{
if(e.ActivatedLine.special==13)
{
Console.Printf(""..e.ActivatedLine.args[3]);
if(!(e.Thing is "Doom64Player"))
{
return;
}
Doom64Player activatorsixfour = Doom64Player(e.Thing);
switch(e.ActivatedLine.args[3])
{
case 129://Red Key
activatorsixfour.UpdateKey(0);
break;
case 130://Blue Key
activatorsixfour.UpdateKey(1);
break;
case 131://Yellow Key
activatorsixfour.UpdateKey(2);
break;
}
}
}```
I remember having a lot of issues with it because it wouldn't properly detect locks on the door if I recall correctly
let me check exactly how it looks in-game
ok so this is mostly the code for what happens after you use the door, not the part that actually hides it
to hide the original lock messages I just replace them with blank strings in a language definition lump
and thats the most I understand since I haven't touched this code in a while
the WorldLinePreActivated function would go into an eventhandler
Sweet!
@shadow bone looks like that engine level just got superseeded by zscript either
Sort of.
Yeah, i don't care about compatibility at all
I believe marisa has made modifications to how hud messages are displayed on screen but I haven't delved into that
I don't think the key messages are counted as hud messages anyway
The idea is that i want to throw large sentences at player. it would be better if there is a dedicated message hud piece which player can scroll via pg-up/pg-down
@past cradle only thing i wonder about, wouldn't it been easier to just override Inventory class?
a lot of stuff in doom delta was done in decorate and later converted to zscript
which meant a lot of the items had different inheritances
later on I had a base inventory class
for other mods
no but i mean all of the pickupables inherit from "Inventory"
if I overrid Inventory then all the actors that inherited from Inventory would still inherit from the original Inventory
Inventory replaces inventory doesn't work?
Or rather BetaInventory : Inventory replaces Inventory?
Wait.....uh.
Yeah nvm
Only way to do it is to hard-override Inventory probably and then replicate it's structure 1:1...probably?
Does Zscript support hard overrides like decorate does?
*pokes @shadow bone *
ZScript supports everything Decorate does, yes
Heh
let's see how fast can i break it 
action native A_BFGSound();
and all other native actions. is there a [extern] call or something?
I think native means the function is implemented in c++ internally instead of being exported to ZScript. I may be wrong on that.
You shouldn't need to worry about it
As i said a few sentences above - i was wondering if i can do it with least amount of blood and just override whole Inventory class
alternatively. are there "extensions" methods present? Like in C# to example - in C# i can write an extension which will attach itself to the base class
Hold up there are
I know certain of the base classes (like actor) can't be overridden or extended for some reason.
But yes, ZScript does support extends
In other words, you can extend classes, but only in the same file.
oh, only in the same file. ;|
So you can't extend anything in gzdoom.pk3
Certain functions are virtual and you can overrride those, though
Like PlayerPawn's MovePlayer() function
I think that can be done with anything marked virtual in GZDoom.pk3
there's nothing really stopping you from creating something that acts like a native class
probably
@shadow bone sorry for constant pings, but. one more question. how do i make zscript items appear in editor?
That I don't know, aside from it being some kind of arcane demonic summoning ritual involving the spilling of virgin neckbeard blood and the burning of a fedora.
@past cradle poke
try loading gzdoom.pk3 as a resource excluded from testing parameters
because if you include it gzdoom will perish
gzdoom builder needs the zscript defintions from gzdoom.pk3 to figure out what custom zscript means
do u have doomednums set up yet
if u don't or if u don't know what they are lemme get the wiki page
๐
something weird is going on. i cannot pick up more than 1 object of ammo. either replaced clip or box which inherits from it.
oh wait. i see.
yeah, ammo has special inheritance rules
checks how fonts are made and cutup via textures huh. easier than i thought. i can just use bitmapfont generator with CSV table and then turn it into Textures.font
learning how to use excel (or opensource analog such as libre office calc) is 100% necessary if you want to avoid repetitive tasks. such as parsing bmfont (bitmapfont, not bytemapfont) format to textures
that reminds me
i wanna write some kind of consolidated toolset for model definitions in python
Okay, what the hell is wrong with this?
Tag 8 is a 3D floor above the door, and tag 11 is the door.
Tag 11 consequentially has the specials ID 11, which is Open Door.
So why the hell is it not working?
the door wont respect the 3d floors height
a tiny gap.
they just look like walls
it's meant to be in a train.
oic
WIP, so there's no roof yet.
ok
make a tiny sector outside of the map
then select the door sector and the new sector in that order
join them
ctrl-j
make a new new sector next to the tiny one and set its ceiling height to the height you want the door to open to
This seems like a really convoluted way to fix a door.
well the thing is that in doom a door is coded to raise its ceiling to the nearest ceiling height
but a 3d floor doesn't count as a ceiling height in that instance
wait, is the door itself a 3d floor?
Of course it doesn't work, it raises the upper texture.
No, but now that I think about it, it has to be.
that complicates things
there is no simple 'raise 3d floor door' action
consider this
you have to link its floor and ceiling movement using Sector_SetLink in ACS
it's a train that goes in a tunnel slightly.
What if I just push the train slightly further back into the tunnel, so that the ceiling won't be visible from the outside?
And I could just use a solid ceiling?
that too
it's a lazy way to go at it, but it's so much better than making a 3D floor door.
but-
oh
oh no
oh dios mio
I would have to use 3d floor doors there
because I'm planning on having the player go in there
goddamnit, why didn't I just use Hammer
But would sliding doors be simpler?
Or would that complicate things even more?
Fuck.
Now I have no idea what to do.
I doubt doors that recede into the floor would look all that nice.
ill give you some examples
Examples of what? 3d doors?
oh. Thanks.
Huh. I kinda had a hunch on how it should be done.
Thanks a bunch. I'll probably have to use this for my map.
Uh...
Did I do something wrong, or why does my ctrl + J bring up the "randomize sectors" menu?
Oh, it's just J.
Oh, you don't even need to join them.
Ah.
the idea is to have an extra little piece of the same sector that exists outside of the map bounds so you can connect it specifically to travel to whatever height you want
Doom mapping is basically cheating the system.
but yeah 3d floors and other transfers do a similar thing with little out-of-bounds 'control' sectors
Wherever and whenever.
I was planning on using that.
When I need to push down a rod on a detonator.
Y'know those boxy detonators with a big rod at the top that you push down?
Anyway, thank you for your generous help.
and then they explode and a bunch of little animals comes out
and sonic goes to the next level
yes
Huehue
@past cradle I see you've been reading the broble. ๐
Tedium, Illustrated
yes
Perfect. means i can actually make a rotating image
what triangle drawer? i'll just rotate UV coordinates
it's a simple matrix operation
yes, i know, but using the ZScript triangle drawer to do this would be better once it's in, it's more flexible
What do you mean more flexible? I have a coord, i have an offset - i can rotate sampling position however i see fit. i can also do all sorts of basic 2d matrix operations with it
Uv coords are in essence 0...1 rectangle
more flexible in that the rotation amount can be controlled by the modder without any hacks
Okay now that's something i actually had a question about
and also easier because you don't need to pad your image out to accomodate for rotation
i remember shaders having controllable uniforms
only post-processing shaders do
not material shaders
there are reasons for that, i can't quite remember them though
i think graf doesn't want to touch material shaders much because they were designed a long while ago and any changes now could hurt future vulkan support
but yeah, the other problem with shader-based rotation is that your images need to be padded out to accomodate for the extra space that could be needed by a rotated image
which unecessarily makes things more difficult when creating sprites/textures and also bloats the image filesize
have a bit of patience for the ZScript triangle drawer and no
once that's in all you'd need to do is apply rotation to the four points of a quad, draw as two triangles and you'd be done
hang on. @unreal oyster https://www.purezc.net/forums/index.php?showtopic=68207&page=1&#entry973131 ???
... that's a zelda forum.
oh lol
Try to stick to the ZDoom wiki and forums.
There's a few other languages with the name zscript
sigh screw it, i'll make 5 rotations over 90 degrees (aseprite has very stellar pixel-perfect rotation), then add + 90, 180, 270 rotations via textures.
Think it's possible to make a MM6-8 in Z/GZDoom?
@cedar chasm what? you mean that megaman mod for zandronum?
@haughty flower Oh, I mean the Might & Magic series
Hm. why? I mean there are spriterips from it. probably texture rips so you can probably port those
Already working on getting sprites. Just more wondering on the inventory, spells and the multiple character thing
I guess if TheMisterCat manages to make a RTS in Doom. I guess what I'm doing should be possible
You know it would be better if you use unity3d instead. thing of the matter is - zdoom is not suited for that type of gameplay. at least technically. You can make almost anything via scripting but the amont of hacky un-straightforward shit you have to endure will be dramatic
...At least that would've been the case if not for ZScript ๐
Yeah, I figured out that it would be hell to remake all the mechanics that is in those games into ZScript
even with ZScript, my attempts with hacking the game into other genres has generally ended in me deeming it not worth doing to be completely honest
ZScript helps a shitton, but gzdoom is still an FPS engine at heart
Calling the M&M 6-8 a FPS is a far stretch, tho it's more akin to Daggerfall I'd say
that's what i mean, even with ZScript it's still not exactly designed for non-FPS
you can do it, there are just some oddities you'll run into
oddities? like what
well, for one, from my quick googling on MM6, it seems to be an open (or at least large) world, gzdoom handles them very badly
@unreal oyster thing of the matter is - building a grid movement with lockstep logic is braindead easy. you just manage it from script altogether
Open World with load zones
even with non-lockstep logic it's still easy since you are still operating on grid cells and running logic from script
MM6 also had this gimmic that you could enter "turnbased mode"
But it would be a hell of a overhaul and I'm probably asking for problems with this
smoke: well yeah grid movement is easy, why are you telling me this...? i don't know anything about MM6-8, i was just commenting on an open world being difficult because gzdoom lags pretty hard on large map sizes with lots of 2-sided lines and no sight-blocking lines
I take it that sloped surfaces doesn't block sight?
so it will render what's behind the sloped surfaces?
Yeah.. that's a problem
Just attempting to do a MM7 stables ends up with loads of 3d sectors
Unity3D would be better for this
in fact i made a bit of dungeon crawler code in the past
and i was much shitter coder back then either
Reminds me of Fight Knight
Except fight knight is actually good. ๐ this one is a prototype done in few hours
@remote coral also seriously. widen your body of knowledge a bit. It looks like dungeon crawlers. all of them, https://crpgbook.files.wordpress.com/2015/01/lands-of-lore-2.png , eye of the beholder https://i.ytimg.com/vi/fTCqiA2udGU/maxresdefault.jpg , before mentioned might and magic series https://i.ytimg.com/vi/if5T4o6ZthE/hqdefault.jpg , hell - shin megami tensei https://cdn.shopify.com/s/files/1/0541/9049/products/Soul_Hackers_ss_3.jpg?v=1519032096
odd, because it's nowhere near being etalon in dungeon crawling
Probably because FK is the only dungeon crawler in this style I've played.
i recommend lands of lore
first one
it's one of the best ones from the old ones.
heee
i made dungeon crawler movement code years ago
using limited distance lineattacks to ensure player stayed on a 'grid'
@light prism throw it at @cedar chasm or he'll probably go nuts
no i think he wants free movement
Thimz aka Waro: I guess if TheMisterCat manages to make a RTS in Doom. I guess what I'm doing should be possible
i would really like to continue this but i need to figure out how to reconcile pathfinding over network
Would go for free movement, just checking what options i have
@light prism that's one of the cornerstones of rts. Classically RTS have star topology/peer to peer networking - everyone is equal client with no server choking others. traditionally that has been done because of the networking speeds. nowadays- you can just run pathfinding serverside and tell units their current movement state
Tho..does zandronum even has serverside-only script execution?
aka server executes a script and maaaaybe tells client what's up
because once that's done - you can make zdoom wars to be a proper goddamn game instead of unit spam with possibility of units actually attacking others
๐
yeah i kinda figured i would have to do it serverside
and yes there is server-side only
i would imagine it would be something like 'send local selection, command type and position to server' 'let server calculate route' 'server spawns waypoints and broadcasts the move to all players'
the only issue is there's no way to 100% confirm the broadcast is successful over a tic
so you have to kinda make a bunch of 'while(value not updated) {update value}' situations
and syncing those between client and server is messy
the best option i guess is to compress the command/group/position into a single integral value to cut down on communications
@light prism no you don't. you shit at them udp style
tell them to move a few times - if it already got it - logic will monster to just keep going over same order
that's about it
you don't want high degree of syncing with this.
an occasional check of "where pawn should be" against "Where it's at"
and then syncing over that keyframe
i need to confirm the intiial order got through
for any given type of ordre
some orders might be looser with reaction speed
but when you click to say, detonate a nuke strike or something, that shit needs to be ensured the first time
you don't want to be clicking twice for a single targetted order
so there needs to be reconciliation/a success handshake at the very least
Yeah
i meant for pathfinding
you definitely don't wanna hang up logic via constant synced over that
no, all the actual pathfinding would happen after the initial handshake and only on the server side
sort of, cvar's are a bit less messy to use than items though
and you can sync them between client/server
i see
basic implementation is call a clientside script from a regular script that passes the parameter that was changed, clientside script updates its cvar, and you can reverse that by requestscriptpuking with the cvar to a script to update it on the servers end
Don't forget to call this thing "Zandronum wars: Now with actual rts control"
๐
i can guaran-fucking-tee you - you'll get Rock paper shotgun coverage from that
granted you can propagate it
camera can be controlled via holding right click and moving mouse which might be a bit jerky, or scrolling to the edges of the screen, or movement keys
the fog of war uses dynamic lights which might be a bit overkill
probably better off using a tagged hexgrid, would give me finer control
too overkill
actually it will be better if you use something like postprocessing shader...granted you can define screen rect correctly only for shader and not for UI, and also..do they even support 2d array uniforms?
this is zandronum, no shaders
it also looks like they have actual fucking uniforms on material shaders
graf needs to up his game
So i've been planning a new hud
Switch is for the show, then there is text typer, healthbar is a rotory thingie a-la chiken-o-meter, flipclock part is for the ammo (3 digits) and i'll probably add something else
Make the switch a chicken-o-meter.
you are making a point and click?
he literally just said
So I made a 3d door that works as intended.
But the texture on the doors won't go up with the door.
I've tried both upper and lower unpegged, but neither did anything.
The map atm (very much a WIP, just making the level layout)
did you look at the script on my example map
if you used my method from that map then you need the script too
the texture wont scroll up with the floor unless the ceiling is also moving
I used your method.
Oh, I didn't even know you needed a script for it.
My bad, I just got the mechanics from said map.
its simple one line (though you'd need to use the same function for any other doors too)
it uses Sector_SetLink to link the movement of the 3d floor's floor to it's ceiling
The actual door itself works perfectly without the script.
I can open and close it no problem.
It's just the texture that isn't working.
I'm not questioning anything, chill.
I'm just wondering why the door works well without it.
if you could see the whole door you will notice that only the bottom is rising, the top doesn't move
usually with a non-3d floor sector you can use lower/upper unpegged to cause the textures of lines in that sector to follow the movement of the floor or the ceiling
but that doesn't work with 3d floors, the texture is inextricably linked to the ceiling height
so if you want the texture to move upwards, you need to link the movement of the floor to the movement of the ceiling
which is what the script does
Right.
that got me wondering.
How well would making it a pseudo-elevator work then?
It's just the base elevator tags don't return where you called it.
what
elevators move both the floor and ceiling of a sector.
This is me mostly thinking out loud, I won't be using it.
So worry not.
mmhm.
thats why i used platform
If it was, there wouldn't need to be scripting.
But alas.
Yep, it works now.
Thanks a bunch.
I AM A GOD
there are scroll specials
Yeah, I ended up using one.
Hello, I am back for some more updates to tell you, amazing people.
Enemy Updates
Maga-Reimu will be a Domination-Tier/Rainbow-Tier Archvile enemy, because she's kinda OP.
Exo Imp will have many new attacks: Power Ball, Power Dash, etc.
Weapons Added
Added a Cosmos Gun. Looks like the Brutal Doom v20c but purple. And the pickup sound for now it says "The gun is good" from Zardos.
Added a Double UAC-Chainsaw. Basically from Realm667.
Enemies Added
Added Sampi, a Domination-Tier Cyberdemon enemy. Beware, his attacks are dangerous AF (Some of them)
Added a Purple Oblivion Imp, a Rainbow-Tier Imp enemy.
Added Ultraspeller, a Domination-Tier Cyberdemon enemy.
Added Ultima Enker, a Omega-Tier Imp enemy.
Added Sergei Bleakwinter (Dark Blue Magicman), a Super Rare Archvile enemy.
Projectile Changes
Some of the Power Balls will have the KAMEHAMEHA sound from Zharkov goes to the store. (I had to)
Now the upcoming features:
Upcoming Weapons
Plasmatic Minigun
Solar Rifle
Nebula Sakugarne
Upcoming Enemies
Aetherion (Super Rare)
Valrum (Super Rare)
Holyan (Ultra RARE)
Worunu (Legendary)
Domination Archvile (DOMINATION)
Mainyu (Omega Rare)
how exactly do you import custom enemies (say, from realm 66) into your wad?
When you're making a wad with GZDoom Builder, you're asked to get the IWAD you'll be using.
Along with DOOM2.wad, just import the wad you want to get assets from.
and it will automatically save it into my wad?
not really.
You'll have to use SLADE to import the file(s) completely into your own wad.
If you don't, you'll have to launch GZDoom with both your map wad and your asset wad(s).
ack, that sound like a pain
then again this is for a community megawad, so I think when my wad gets added to the pk3 everything should be included
Eh, you just need to download SLADE and transfer those files.
If you need more help, just ask here.
@light prism no i am not but i do want to give inventory some space since i am using setsize(64, 640, 400)
should be enough breathing room for inventory items
haha
but you are using the base inventory class still?
not some struct or something
i think so
oh jeezuz
you actually have full inventory system
only thing to make it even better would be ultima approach of no-grid but by-weight inventory @light prism ๐
with sacks
you're a sack
current system supports in-inventory containers
and any-actor containers that can take a set of initialization items in their args
and some extra options for size
the brown window is the barrel, for example
i doubt the veracity of 'better' considering how easy it was to lose a ring under a pile of thousands of other items
but i wouldnt actually need to change much to adapt it - since item instances take a vec2 for position on a grid, it would just be a matter of removing the snapping/sorting etc
i like this more though, its more diablo-esque, and i can make items stack to represent lesser weights anyway
yeah yeah, hence why i put it in ` s
You know at this point you really should move this to unity. Or actually get visual studio and start adding classes to native code
extend native hud class at the very least.
you wouldn't want to extend the hud system for inventories though
you'd use a ZScript menu
which is a basically completely undocumented system that's difficult to work with
how would u get a zscript menu to interact with the world ๐
(a problem i'm trying to help with via https://gitlab.com/Gutawer/gzdoom-zforms)
network events
In short, the menu sends a trigger to let the playsim know it needs to update something
There's a simple one in DarkDoomZ that lets you preview the light level changes without leaving the menu
Just remembered that's not specifically using ZScript menus, but eh.
@unreal oyster yes you do when you want to add faster drawers and better data interfaces
i mean look at cat - he's using data tables
and then doing a tedious plugging
this can be refactored into something like INVENTORYDEFS file with better format
i can fairly confidently say that something that broad would not be accepted into gzdoom tbh
especially with ZScript, that's something you can do yourself without C++ help
and it's something you'd probably be expected to do
Who said he needs to have it accepted back? Branch it, do the full release with sources provided
there's no "one size fits all" inventory system
if roboblast did it, and action doom 2 did it - there is no reason why he also couldn't do it
i mean ffs - he is already doing full on game anyway
anyway besides all that, you read my message wrong, i was just commenting on it being a bad idea to use the hud system for an inventory screen
the hud system is for (no surprise here) huds
ZScript has a menu system so if you felt the need to extend anything it'd be that
considering it's designed for making menus
...inventory is not a menu, it's a piece of player gui
Unless you're playing old-ass roguelike such as nethack
the screenshot tmc posted is absolutely a menu
it isn't
it's in game. he has a container opened from player interaction
and main inventory to drag items
yeah, and the best way to implement that in ZScript is via the menu system which has built-in consistent mouse support
menus in gzdoom don't need to have a faded background, or even pause the game
yea zscript menus allow direct interaction with the mouse
instead of acs mouse systems
yeah except mine is acs ๐ฆ
absolutelydisgusting.jpg
sure
its not like some messy shit written in doombuilder at least
its a nice neat organized system that ive tried to implement as simply as possible
anyway worktime
part of me wants to rewrite drpg in zscript to avoid acs funk but oh god I don't think I'll ever finish that project.
ok i am confused. i am testing inventory with standard params, but at 64,640,480 this is how it shows up
how do you stop a moving floor/ceiling from within ACS?
if you started a perpetual mover i dont think you can stop it
really? You have to wait until it stops?
I want to move a very big floor in the opposite direction once the player kills a certain number of enemies
a perpetual mover cant stop
but no i dont think you can stop any form of movement actually
what does your want have to do with STOPPING a sector
oh, it is already moving, and you want it to change direction after a killcount?
i would do something like
{
TagWait(movingsectortag);
Floor_MoveSpecial(movingsectortag, speed);
}
desirednumber = n;
while(killcount < desirednumber)
{
TagWait(movingsectortag);
Floor_OppositeDirectionMoveSpecial(movingsectortag, speed);
}
pls note my fictional functions
actually thats too vague
you want to move it over a specified distance each iteration, then wait until it reaches that height, and reiterate
to create the illusion of smooth continuous movement
TagWait waits until the specified tagged sector has stopped moving (in any direction)
I dont necessarily want to wait until it reaches a certain height
yes but you cant stop a mover once it has been called
ok
ah, I see what you are saying
Hey did anyone submit a map to Vargskelethors doom contest?
who?!?!?
Vargskelthor, he's hosting a doom mapping competition.
who?!??!
my nigga plz
everyone send him a picture of your toilet on a wall texture
now thats comedy
Hm.
beep boop
only thing is that that thing to the right of screen is actually turning counter for hp. currently graphic is not very good. as i want to eventually add painted evening sky translating to nightsky
this gets underlayed under the window
armor counter is probably added on top of it as a thick-needle gauge
but still under the window
a thing after that is a hole for flip-counter ammo. i think 4 digits would suffice
not sure about animating it tho
Does zscript provide dynamic texture scaling?
oh nvm, it does
ooh goodie, the HUD even reminds me of the Fallout thing
yeah, i partially based it on it. partially.
I'm seein the influence a bit
I'm having a weird bug with a moving floor
please tell me youre not just going to repeat the problem from yesterday
nope
I worked around that. ๐
But I have gore hanging from a 3d floor. When the the 3d floor moves down, the gore sticks with it just fine
but when it moves back up, the goor falls to the underlying sector
falls?
like it sits on the floor? or it tries to 'hang' from the underside of the base sector?
mmm that might just be a quirk of actors using +SPAWNCEILING unfortunately
that's what I was afraid of
Are you using zscript?
rather, their behaviour works fine, its just 3d floors didnt exist back then
i dont think so
ACS
its the default actor for all four things
or rather set gravity to zero in udmf format
it might be just using inherit gravity ๐
where in the lump do I define that? this is for a doomworld community wad, first time ever doing anything non vanilla
@shadow bone how do casts work? can i just int test=(int)somedouble?
this whole thing has been a learning process for me
haha, I'm the wrong person to ask. Casts are like insane black box magic to me.
bro these are default decorations
they have +SPAWNCEILING and thats about it
i think +CEILINGHUGGER would only actually have any effect if they were moving laterally
+MOVEWITHSECTOR might stand more of a chance
but why should he have to modify default decorations at all
@light prism @flat storm well as i said - if they fall at start of the map - they using gravity and disregarding 3d floor. you need to set gravity of them to zero and manually adjust height in editor
that is - if you're using UDMF format
very good.

how the fuck did it truncate it if it's still longer
string trnk="*"..message1;
if(trnk.Length()>26)
{
double lng=trnk.Length();
lng=ceil(lng/26);
int cnt=int(lng);
for(int q=cnt-1; q>=0; q--)
{
AddMessage(trnk.Mid(q*26, ((q+1)*26)), message2);
}
}
else
{
AddMessage(message1, message2);
}```
also font i made turned out to be utter shit, but that will have to wait for later after i'm done actually implementing functional
that's the problem - it isn't.
odd, it does look monospace
i have no idea how to force hud to display it as not monospace
not sure if thats possible
yeah, i figured as much
all internal fonts are monospace so all font handling would be monospace
That's retarded ๐
the game was made in 1993
yes. Buuuuuuut.
I am perfectly well aware why original did it that way.
However.
We are not in '93 anymore
oh for fucks sake.
i need to set it's LENGTH, not ENDPOINT
fucking hell i'm an idiot
that's what she said
what mod are you making?
same, Kinda want to nick the same concept for my mod
This? this is terminus virtute 2
i decided to revisit that map and properly expand it
I know probably nobody cares, but those two flags did the trick
@past cradle yeah those I's and L's ...also rest of the symbols. i need to edit them to be centered i guess. or better yet - throw this font into garbage and get one which is actually not shit
fuck it, i'm gonna go raid bytemap font repository. something should come up
speaking of looking like fallout
one more thing is to split by word rather than by plain length. after that i'll need to add line special callouts
heh yeah i raided BMF repo too
and i have code for all this formatting junk also
though its in gdcc/acs
perfect
should bind keys to scroll up/down through the log. after all - it is 64 lines deep.
Now to finally try and add line special callouts. I will paint them golden instead of green, to differentiate
@past cradle if you gonna re-touch your mod i suggest you do the same and add different colors for secret specials
re-touch yourself
Ye fockin' cat
that actually would piss me off pretty bad, i have tinnitus
@past cradle your code doesn't seem to do anything <_>
What code you lookin at
doesn't even print anything to console
and yes i did include that file to ZScript.txt in root
version "3.3"
#include "Actors/TW2Player.zsc"
#include "Actors/QuestItems.zsc"
#include "Actors/Projectiles.zsc"
#include "Actors/Ammo.zsc"
#include "Actors/Weapons.zsc"
#include "ZScripts/TWHud.zsc"
#include "ZScripts/Custom.zsc"```
Did you add eventhandler to mapinfo
...OH!
FFS. Right
yep, works now
fockin' a
now. Last thing. how do i call a zscript function from ACS?
i need to move all manual typers to this hud as well
ok it's ScriptCall
What kind of liquids my dude
Like stuff where you can swim in it and part of the sector is transparent blue or green for water or nukage and where it has the swimmable part only in the actual swimmable part
yo @surreal meteor , might want to remove that word, Caligari (Admin) might not be so kind
the question is fine, just edit the word
Huh, another one looking to suppress my first amendment right.
not suppressing anything, I would just hate to see people banned or warned for minor infractions
also @surreal meteor https://zdoom.org/wiki/deep_water
Is this what you're looking for?
@past cradle once again - thanks a ton dude.
๐
now i probably need to rework logging a bit. i guess it wouldn't be too much harm to use dynamic arrays instead. tho i am worried for the speed - i want to add a questlog to this and have typers to grab from an array.
is it just a string array atm?
fixed length, yes
is there any way you could use pointers to a language file rather than a string array? im sure that would be neater and cheaper, though a bit more trouble to organize
Nah, that's not the problem. You see - right now i serve incoming string only once - when it gets written to that array. split onto words if length > 26, and add as many strings as needed until every one of them less than said 26 length
With more dynamic and multi-view system i will need to keep that array reorganized, probably as words and \ns and type it in dynamically while current line length is good enough
Tho i am weary of the quantity of words it should hold.
yeah, thats why i suggest pointers to strings, then you shift the load to the conversion process
Cat, i rather have this system more flexible.
it would actually be more flexible to parse your strings as they come rather than on intiialization
example: multiple formatting styles
what do you think i am doing?
i eat text from actors with pickup overrides and also custom class which checks whenever i get keys
my bad, misinterpretation of previous statement
it's the temp storage of text log i am thinking about
well thats where storing pointers would be cheaper and more manageable i think
@light prism cat, again, it doesn't matter. as i said - i need 2 representations. Once truncates lines at length 26 , other one goes up to 100. Currently only first one working via storage of pre-truncated lines to 26.
There are 2 ways to implement this. Way 1 - keep rotory log and add second log with truncation at 100.
Way 2 - unify into dynamic array of words and dynamically read out of it, truncating on the fly.
I am pretty damn sure latter one will be much more intense since i'll be running large iterators every ui update
well. Truncates and adds new line with rest of text
I actually really love that HUD @smoke_th#3764
@warped rampart thank you ^^
@zinc egret Hey, just wanted to let you know about your black decals bug report on DarkDoomZ; here's the existing bug report thread for the engine lighting issue: https://forum.zdoom.org/viewtopic.php?f=2&t=59390
I added your report, graf has confirmed it's an engine issue and advised it wouldn't be a quick fix.
Discussion about ZDoom
The blood decals are from the Droplets mod and the author has been MIA for quite some time so it's probably not mod related but spotlight related like Nash mentioned
Okay i think i had enough fucking with that map, time to rebuild it. The worst part is because i'm using 3 continuous wall portals at garage - goddamn lags like hell whenever garage is in the view. gonna have to rebuild it using 3d floors. also this diagonal lighting might be cool trick, but i'm finding it increasingly difficult to work it into every nook and cranny, especially because i did comparison shots in 3dsmax direct lighting - it's always off.
on top of that even though i did try to do proper scale - houses feel very crammed. especially comparing against duke 3d.
yes but this is a videogame god damn it. recall duke3d. all the buildings there have something like 1.25/1.5 scale. making duke (and monsters) look like a teen by height
well, teen or a shortguy
yeah
im pretty sure there are a lot more palatial mansions in video games than dusty shacks
sim city makes up for quantities of dusty shacks
๐
another problem is that human sight angle is bigger than what 16:9 screen has to offer, so rooms irl feel more volumetric than they do on screen
yeah
on top of that i played eday recently. goddamn thing has several nice city maps
yeah sgt mark is actually pretty decent mapper
well i say that even though they're adapted maps from other mapsets mostly
just look at this. Shieeeeet, i need to step my game up
it's not about just height
but about overall composition
a very dumb question but important. does anyone know where these came from? i've been using them for several small mapping projects, taken them from another wad but have no idea http://i.imgur.com/dUFvu.png
any easy way to clear all weapon and ammo pickups on a map? including dropped by monsters?
no
possibly a dmflag?
hmm you can remove health and powerups but not weapons and ammo
theres probably a way using zscript but it would involve modifying code for every pickup
same with decorate
How can you resurrect the player though methods not involving the command console or mapinfo?
Basically how do I resurrect the player using ACS or zscript?
there is a zandronum dmflag SV_ForceRespawn, however that just makes you appear instantly after death
i dont think there is any function that will allow you to control when respawning happens
maybe under zscript
Yo
Fun little discord you all have going on here.
there's no sub for Doom Modding though. Anybody here work with mods at all?
Correct me if I'm wrong
But isn't this the modding channel?
Also, gonna throw a question out there: using wind to push a player, doesn't work underwater. Is there a variant that I can use for both underwater and above water? Im using "ocean currents" to keep players from swimming out infinitely
I guess it is the modding channel
odd, wind should still affect player
have you tried using the generic 'pusher's
ahh....
'Wind also called pushers or pullers: a floor carrying actors present inside it, including flying or floating actors. Constant wind does not apply to actors that are underwater (with waterlevel set to 3); point-based wind ignores deep water.'
from the wiki
you could probably write a script activated and deactivated by player enters/leaves sector
that just adds velocity in your chosen direction
more often than not strong player-moving wind is a gimmick
so make sure to either use it sparingly or n a meaningful way which wouldn't annoy the player
The level starts with them in a boat that just landed on a coast. They can go out into the ocean, but the currents push them back after a while
I could just use an impassable line, but eh. I feel like this would break immersion a bit less
@haughty flower - it was useful in wormsdoom ๐
when release wormsdoom ๐
I am hands down ready to start working on my own doom mod
Keeping oculus rift in mind, for a good VR experience
I'm inspired by the mod Total Chaos, it's incredible what they've done
I think I can deliver something similar, if not equally as good
Who here writes scripts for doom mods?
I'll pay you to write for me
While I can, I want to focus on art and level design
PM me if you're reading this and you're interested. We will make thousands together
@vocal badge how much are you paying?
Depending on the complexity, $50 a script
Sign me up. seems like an easy buck
Nice, let me PM you
make each script a zscript class extension 

i would release wormsdoom if someone would help me test it on the regular
$50 a script lols
Script 1 (void) { Print(s:"Give me fiddy bucks"); }
p.s. @vocal badge i wrote most of the GUI functionality of Total Chaos
@light prism dude
really? thats awesome. That mod is so sweet.
I'll help you test a worms doom if you help me with some scripts as well.
I actually have the HUD ready for my Mod already lol.
@past cradle Just something I noticed, the beta in doom delta
pressing next item or previous item results in a crash
@light prism not a bad price honestly. Besides these do not require any extra-high gear cognitive function to be written. Now if this was a procedural generation with node analysis, location gauging, encounter heatmapping and the sort - sure, i would've taken crapton more. ๐
@past cradle Is the beta in the doom forums the latest one?
sure sure
@vocal badge - really i think i need someone who is in my time zone who can test at a moments notice and be willing to put up with game-breaking bugs
@haughty flower - sure but you wouldnt pay $50 for my above example print script ๐
No but i conversed with him - he wants full scripts. as in weapon scripts and complex scripts
how do you do that menu, I need to know, also is that in ACS or zscript?
acs (gdcc)
basically hold mouse coordinates and clicking in an array/struct, buttons are functions that return true when clicked within their area (passed as coordinates)
then you just have a big ol' looping script calling all the button functions to draw and wait for clickage
like if(button(x, y, x2, y2, image)) { do button click stuff here }
Cat, this is too rudimentary. i'm talking proper generation. i've been toying with it for several years now. can generate planets via 3d noise. Tho i'm yet to implement proper polar coordinate thermal weathering and erosion algorithms
it works for my purpose
ie implementing destructible 2d terrain for a worms-like game
yeah, i understand
in doom ๐
i mean you could build all that shit on top of it if you really wanted to
ok found a screenshot.
also this is 'proper' generation, its a perlin generator
naked perlin is as worthless as it gets. you need to post-process it in order to make the most out of it
sure, not on a limited 2d grid though
obviously
it does do a few passes but pointless doing more when its tile-based
worms actually doing it other way around. at least sometimes. even originals - they have preset shapes they mash together, then determine tops and bottoms (for grass pixels) and then some other stuff, like placement of additional features
later games like armageddon added tad more noise generation, but it's very dialed down.
yeah, i figured they did it like that
in fact my first iteration did it similarly
with randomized line and shape drawing
of course theirs wasnt tilebased heh
but its doom, its not like i have many options to make destrucible landscape in the same way
You might wanna stop bothering to do it in doom and instead make a small clone of worms in unity3d, then just throw it to itch.io for fun.
meh
the whole point was to see if i could do it in doom
and back in my previous version i did have quite a decent playerbase that would play for hours on end
so i was doing something right
the original version didnt even have destructible landscape, it was all regular ol doom bsp maps
M8, there is actually more challenge of doing it in freeform rather than in doom. For one - actually implementing multiplayer
admittedly the shooter-style multiplayer/lag compensation doesnt work super well for 2d movement
but it worked well enough to be playable and fun
worms are turn based anyway ๐
so building basic multiplayer shouldn't be that hard
its not something i really want to build from the ground up for the third time
fair
iirc Worms uses Quadtrees to stay precise without wasting power
@royal wave do they? heh, that's actually...pretty damn clever
that is actually what i need to implement
atm the map optimizes itself by consolidating contiguous solid areas into larger single tile actors
and i need to split em up when an explosion happens to determine which sized tiles should spawn after removing the larger one
Side project I've been making https://www.youtube.com/watch?v=HB5DmSNwfXM
Point of each level is a forced pistol start each map, as based on the game this is deriving from. I've concluded that there isn't a decent item replacement ...
nu
@royal wave what's your Main project?
@light prism they both link up into the misery chain, author abandons them and goes to make another side project
Okay, apparently gzdb cannot do full rooms, only terrain. i'm gonna write a parser which will offset and invert vertices then. which should be easy - UDMF is a text format, all blocks are defined
talkin bout importing?
sounds like a mission, you would have to figure out how to translate vertical space into 3d floor controls in an optimized way
@light prism oh no lol. i already imported but inverted. what i'm gonna do is i'm gonna iterate through UDMF blocks and, get vertices and just subtract from them, then shit it out back
or rather multiply them by -1
and switch from ZFloor to ZCeiling
luckily for me - i already have UDMF parser in C#. and i made it all the way back in 2015 for impes. https://www.youtube.com/watch?v=nvqAOdquZww
(ex unidoom) Alright, here's an update video, after a month of hard work i properly done most of the stuff to finalize alphastage. Impes is a Unity3d framewo...
code is crap tho. because i've been much shittier coder back then - there is a crapton of funky stuff going around. like using a ton of reflection
yeah, i was kinda building it to be a drop-in replacement for gzdoom, even started working on monster ai but....EH. Burned out
still, i suppose you could use it after some polishing as an actual level tool for your own projects
true
only handful of line specials were implemented tho. didn't even got to vertex slopes
no 3d floors then
Well, i made a "polyobjects" out of doors. as in doors are built as separate objects. you can see in the beginning door rolling out of the way
i imagine polyobjects are actually better under this than natively though
they're easier too. i expanded that doombuilder - got to heavily use extra fields for configuring them
i mean i tried building a new project to rejuvenate it a bit. even got dynamic level loading a-la half life done https://www.youtube.com/watch?v=inugOCXcg4I
Just a small demo of that game i were building, with usage of Impes. Also - half-life-like loading also works
still burned out
tried to co-opt hocus doom author into working with me - dependancy on me would've added at least some desire to progress (for me back then in that mental state i was in). Nope, didn't happen.
yeah its pretty tough trying to take on a whole big project by yourself
at least as far as pure altruism goes. add a bit of monetary incentive - and you can plow through it like nobody's business
i'm back
is it possible to turn off the music with decorate or atleast acs and then when the weapon is deselected the music goes back on?
who's a clever nubkin
i will probably die by the time i finish this map
thanks but i don't know how will i even finish the map
i have to do deathmatch and coop support too
i'm ditching difficulty because i don't feel like it
Wot
๐
okay, i got opengl context running - i'm gonna finalize that bulk vertex utility for udmf in no time
dem nawmuls
i was asleep and i will now kick your ass for trying to claim my map
i'd like to see you try
i'm 6'3" of pure grade A hunk beef
and I know 15 different fighting styles
i mean, i dont know how to perform them, i just know that they exist
yeah well i've got a gun so
i am a vampire and
2 more rooms and i'll be done with this map
fucking finally got that shit to work
ok now this shit autodetermines distance and is actually orbiting it. sweet.
it is relevant since it is udmf map i am loading
ok, 50% done. these bulk tools for vertex z(y, height) will be very useful in a moment. i have several floating islands i need to plug around the map via stacked sectors
Perfect. now i just need to serialize textmap back.
@light prism Cat this might be useful to you when you'll start making caves and shit
Okay. preliminary test before i finish writing serialization - IT WERKS
That looks awesome
i'll finish it when i wake up ๐
keep in mind serialization i am writing is very minimalistic so it will not include any things or line specials. sole purpose is to import obj to gzdb, save, invert it, replace textmap lump, then export resulting thing into prefab
ladies n gentlemen im proud to announce that this map is COMPLETED all that needs to be done now is monster placement
how is ti complete if it has no monsters
nigga the final 2 rooms don't have monsters
well thats a letdown
hello, i want to make cyberdemon die, ending the level using:
SpecialAction_ExitLevel
CyberdemonSpecial
in map info
can i have an example of how i would implement it in the text
nvm i got it to work
@carmine badge when do we get the download my guy? map looks sweet!
What do you guys think?
Looking good! @past cradle
thnx
i made this
a wall texture
it's part of a new wad i made with new monster and everything
marble wall
a marble door
Hey aren't the textures SP_FACE 1 and the tentacles supposed to be animated? I specifically remember them being that way.
that glowing texture looks a lot like a sega or snes game background texture
like something from one of sonic's stages
yeah, it looks well done but i cant imagine a military dude with an emo flop
would be massively counterproductive to have that shit in your face when you're trying to aim down your sights
ASP!
thnx
what are each of the colors supposed to be?
You mean Dr Peters right?
ye
light blue is normal, green is happy, red is angry, white is pained, orange is paniced
I hope Dr peters returns in DOOM Eternal.
what happened at the end of VFR?
the game ends
serialization of text map. because y'know. shitting all that out is "so much fun"
and that's only a small portion
alright. it is done. Keep in mind - no specials, no things. This is puerly for mass editing vertices and/or sector heights - mass swaps, height copying, offsetting, mult (against 0)
what
use blender you puss puss
'id like tastier food' +steals caviar+
'id like a better hand' +slips four aces out of sleeve+
you dont do metaphors either apparently
btw dont talk about pirating shit here
I'll just use something with a better UI
p.s. moderators can see your deleted messages
also ur a pussy
Remind me to call you names when you ask for advice from someone ๐
you didnt ask for advice, you said blender sucks and then said you would pirate 3dsmax
heres advice: learn to live with what is dealt to you
i tell you hwut
that was implying the latter of what you said
before "learn to live with what is dealt to you"
calling someone a pussy for pirating software >name has cat in it
yes
for your crimes, u shall have to play plutonia on uv with only a mouse
you mean Go 2 It
my favorite doom was TNT fight me
my favourite doom was catacomb 3d
More of a fan of Hovertank personally.
hoverdoom 1d
someone should do a 1d mod
its just black with a single dot in the middle
you cant even move the dot because that would be a delta along a 2d axis
you're a permanent camera
wish me luck