Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
StevenC21

Community Chest 64

Recommended Posts

It's always jarring to see a Doom 64 map that doesn't use colors and/or gradients. Lighting is the game's most powerful tool for creating ambience and what sets it apart from classic Doom.

Share this post


Link to post

Floors or walls?

Keep in mind that with floors/ceilings, you have to also set the "set ceiling/floor scroll" flags, as well as the scroll direction.

Share this post


Link to post

Walls. Having an issue where in some cases they scroll as intended, other cases do not at all. Wondering if there's an issue with whether it's one/two-sided...

Share this post


Link to post

Make sure the linedef is facing the player, only the front side scrolls IIRC, If it's not then you can flip it by selecting it in 2D mode and pressing "F" then apply the texture to the front side:

 

face.png

Share this post


Link to post

here's a screenshot for i test run for my map (of course not the real thing, still trying to get the hang of doom 64's lighting systems and such)

Untitled.png

Share this post


Link to post
Just now, Thedoctor989 said:

here's a screenshot for i test run for my map (of course not the real thing, still trying to get the hang of doom 64's lighting systems and such)

Untitled.png

Looks good so far. Can't wait to test it out and play it.

Share this post


Link to post

im kinda going for a surreal and unusual map where it will have like things you wouldn't normally see in a doom game like earth but slightly twisted..

Share this post


Link to post
2 hours ago, GoatLord said:

Walls. Having an issue where in some cases they scroll as intended, other cases do not at all. Wondering if there's an issue with whether it's one/two-sided...

 

Yeah, it's the 2-sided thing as mentioned.  The back of the linedef doesn't get any special movement stuff.

Share this post


Link to post
22 hours ago, Da Werecat said:

It's always jarring to see a Doom 64 map that doesn't use colors and/or gradients. Lighting is the game's most powerful tool for creating ambience and what sets it apart from classic Doom.

Yeah I understand that but when I first played Doom 64 it was always too dark for my liking, don't worry though I will be putting lighting in.

 

Will have some more screenshots on maybe monday.

Share this post


Link to post

@GoatLord, something that can help to get a feel for how macros work is to make a couple test macros with just one or two actions in them, and see how they work in-game. And how things change in-game when you change settings in those macros, for actions that take numbers.

 

Not sure you understand how a specific action works? Testing it out in-game with different numbers really is a great way to get a feel for how things work.

 

Once you know the basics of how to make a functioning a one or two action macro it can also be much easier to wrap your head around things.

 

Basically for many people I think macros can be confusing at first, until something suddenly clicks and then they "get it." Getting to that initial understanding is the hardest part.

Edited by sector666

Share this post


Link to post

If it helps, here's my rough explanation, and my method for managing them.
 

First of all, a macro is a linedef type- and a linedef has to be triggered in some way to do it's thing.  ACS isn't dependent on being attached to a line in your map- macro *is.*  Macros use tags to identify which things, lines, or sectors to do their thing to.

 

A macro is basically just a todo list, and it only does things in the order you list them.  There's no fancy IF,OR,AND.  It's just a list of actions to take.  Like this:


 

Quote

 

macro 1

{

Door_Open(10);

}

 

 

What's that do?  It opens any doors with a sector tag of 10.  Real simple, right?  So what if you want it to do more than that?  You just add more to the list:

 

Quote

macro 1

{

Door_Open(10);

Door_OpenFast(11);

Floor_MoveByValue(12, -128);

}

 

Now, my macro opens all doors with a sector tag of 10 *and* 11- with 11 opening faster than 10.  It also sinks any floors with a sector tag of 12, by 128 units.

 

But, all this stuff happens immediately, and simultaneously.  What if I want to stagger these events a little, to make it look a bit more natural?

 

Quote

macro 1

{

Delay(30);

Door_Open(10);

Delay(15);

Door_OpenFast(11);

Wait;

Floor_MoveByValue(12, -128);

}

 

Now, my actions won't start for a full second (30 tics) after the macro (the linedef that IS the macro) is triggered.  There's a slight delay after the first door opens, and "Wait;" does something a little different.  It will not move forward until all the previous actions are completed.  So until all the doors with tags 10 and 11 have opened, it will not start moving that floor.

 

So we have a fancy macro set up that will execute actions.  But how do we get it to work in the first place?  You have to assign a linedef in your map to *be* macro 1, and then it needs to be triggered somehow!  You can do this in all the traditional Doomy ways:  crossing the line, pressing a button, or even triggering it when a tagged group of monsters is killed.  So let's do that last one.

 

Here is the example map we're working with.

 

image.png.81ad8d7d4b5940acc8e59589dd9dd525.png

 

That little diagonal linedef is our macro!  Here's the important properties:

 

image.png.7c19ac59ac2cf67d0a0c971c5ed3711d.png

 

It's type is macro 1, its tag is 333, and the important part:  It's triggered by dead things.  So when every enemy in the map with tag 333 is killed, this linedef will be triggered, and thus the macro will begin running.

 

Your enemies will also need to have that same tag, and they'll need to have the "trigger on death" flag.


image.png.57ce941e467d2b7cd219d8583cf12df8.png

 

Simple.  You kill the zombieman, the macro starts running. 

 

If you want a complete list of all the possible macro actions, this is your bible.

 

Now that's all you need to know to start using macros.  But, I have some words of advice for managing macros and tags.  (spoilered so we aint getting too messy)
 

Spoiler

 

DB64 doesn't have all the fancy features of modern DBs, specifically how it allows you to click a button to choose an unused tag.  So, managing your tags is a manual process here.  It gets confusing if you don't have a system for allocating tags to macros, so here's what I do.  Any macro I use will use a range of tags that = macro#*10. 

 

So for macro 1, I will use tags 10-19. 

Macro 2 gets 20-29. 

Macro 10 gets tags 100-109. 

Macro 11 gets 110-119.

 

This is a really clean way to make sure that you're not tripping yourself up and using tags that you've already used.  USUALLY a macro doesn't need to reference more than 10 sector, line, or thing tags.  If it does, start using the 10000 range.  So macro 1 overflow would be 10010-10019.  Or whatever.

 

 

That got a little lengthy, but I promise it's easy once you start doing it.

Edited by Antnee

Share this post


Link to post

I also heard that two macros can't work at the same time, is that true? One will finish, and only then the second one will be executed.

Share this post


Link to post
56 minutes ago, Da Werecat said:

I also heard that two macros can't work at the same time, is that true? One will finish, and only then the second one will be executed.

 

That's correct.  But let's define "finish."

 

Door_Open is "finished" the moment that the door starts to open.  Same for Ceiling_MoveByValue.  However, a Delay is only finished once all its tics are completed, and the next action starts.  So if you have this macro...


 

Quote

 

macro 7

{

Thing_Spawn(70);

Delay(60);

Thing_Spawn(71);

}

 

 

...It's only finished once thing71 is spawned.  That's gonna take approximately 2 seconds to happen, since there's a delay of 60 tics.

 

"Wait" is a different beast, and you can potentially run into problems by using this too much.  It causes the next action to be delayed until the previous action is *totally completed*.  So if I do this...

 

Quote

macro 8

{

Ceiling_MoveByValue(80, 1024);

Wait;

Door_Open(81);

}

 

...then you're going to be waiting a long time for Door 81 to open, since it has to wait for ceiling 80 to raise by 1024 units before it will start opening the door.  That also means if you trigger another macro while the ceiling is still moving, nothing is gonna happen.  Whereas if I replaced my "wait" with a "Delay(10)", the door would open a split second after the ceiling starts to raise.  That would "finish" the macro.

 

So you have to be careful about adding too much "Delay" and "Wait" stuff, if the macros are making critical events happen.  As a rule of thumb, you want any given macro to complete all its actions within 60 tics IF the player can roam around and trigger other macros.  3d bridges are an issue, for example.  They require ceiling/floor changes to be instantaneous and to be triggered immediately, so if there's another macro running when you cross the "make bridge go up or down" linedef, you're gonna have a bad time.

If you're locked in a room with a specific, linear sequence of events, it doesn't matter too much.

 

It's really not that big of a limitation to be honest- especially when you consider that you can pretty much add as many lines to a macro as you want.  There's only a few times that I ran into problems when making all my levels, and it was usually solved by either removing some delay, or corralling the player so that they can't trigger a shitload of macros all willy nilly.

Edited by Antnee

Share this post


Link to post

i was wondering what everyone thinks of a cyberdemon fight andi fi so wherever you think would make it interesting. i think possibly in the middle of the game to keep the player entertained so they don't get bored if they decide to play through the whole game in one sitting.

Share this post


Link to post
1 minute ago, Thedoctor989 said:

i was wondering what everyone thinks of a cyberdemon fight andi fi so wherever you think would make it interesting. i think possibly in the middle of the game to keep the player entertained so they don't get bored if they decide to play through the whole game in one sitting.

 

IMO, if you need a cyberdemon just to keep you entertained, you're doing it wrong.  I like how the original handled it personally- I don't think you saw one until like... level 18 or so?

Share this post


Link to post
17 minutes ago, Thedoctor989 said:

i was wondering what everyone thinks of a cyberdemon fight andi fi so wherever you think would make it interesting. i think possibly in the middle of the game to keep the player entertained so they don't get bored if they decide to play through the whole game in one sitting.

IMO Cyberdemon fights are at their peak if you're fighting them in a huge area with some cover and no BFG usage. Which is why I enjoyed the original fight so much. The Spiderdemon boss fight was incredibly disappointing because you likely had the BFG at that time and to make it worse it's health was lower than the Cyberdemons.

Share this post


Link to post
22 minutes ago, Antnee said:

IMO, if you need a cyberdemon just to keep you entertained, you're doing it wrong.  I like how the original handled it personally- I don't think you saw one until like... level 18 or so?

 

Yeah, I agree that relying on certain enemies just to keep things interesting could also potentially mean there's a lack of creativity. Though, I am not opposed to the idea of having some sort of Cyberdemon boss maps or something, similar to No Escape but larger and more complex or whatever. Without having the Unmaker since the tougher the enemies, the more effective the weapon is against them, it trivializes boss fights. BFG would be fine however.

 

As for the original, you first encounter Cybies on MAP17, or rather one acting as a final boss to the level, and then on In the Void if you take the secret exit on MAP18.

 

E: @TakenStew22 Did you mean the Mother Demon? There are no Spider Masterminds in Doom 64.

Edited by Agent6

Share this post


Link to post
6 minutes ago, Agent6 said:

 

Yeah, I agree that relying on certain enemies just to keep things interesting could also potentially mean there's a lack of creativity. Though, I am not opposed to the idea of having some sort of Cyberdemon boss maps or something, similar to No Escape but larger and more complex or whatever. With or without the Unmaker or BFG by that time.

 

As for the original, if you go to the secret levels you first encounter Cybies on MAP17, or rather one acting as a final boss to the level.

 

E: @TakenStew22 Did you mean the Mother Demon? There are no Spider Masterminds in Doom 64.

I was talking about Doom 1. :)

Share this post


Link to post
4 minutes ago, TakenStew22 said:

I was talking about Doom 1. :)

 

I don't know if using Doom 1 or 2 as reference for a D64 project would be a great idea though since they feature more enemies :v . Though there might be some good ideas to be found inside to be fair, or somewhere else.

Share this post


Link to post
5 minutes ago, Agent6 said:

 

I don't know if using Doom 1 or 2 as reference for a D64 project would be a great idea though since they feature more enemies :v . Though there might be some good ideas to be found inside to be fair, or somewhere else.

Don't worry, I was just making an example of how I think the boss fights should be put out. I compared how great the Cyberdemon fight was because of its huge HP and no BFG overkill, to the disappointing Spider Mastermind fight with its lower HP and BFG one/two-shot.

Share this post


Link to post
1 hour ago, Da Werecat said:

Speaking of, Doom 64 runs at 30 frames per second, unlike PC Doom.

 

That may be the case, but every reference of "tics" in the macro wiki states that 35=1 second. 

 

Edit:  But I'm wrongy wrongy wrong as it's actually 30.

 

Edited by Antnee

Share this post


Link to post

Well, I was talking about the playsim being slower, not just the visible framerate, so it should be relevant. Not sure why it's 35 at the wiki, I probably don't understand some things.

Share this post


Link to post

My current sketches so far. There is enough locations, so I should stop to adding them.
 

Spoiler

X5DSiaD.png


I still miss some of GZDB features like see unused tag and draw rectangle. But it seems I get to used to D64builder with time.
 

Share this post


Link to post

The wiki is most probably wrong as the supplementary utils.txts suggests that one second is 30 tics. There are other few mistakes here and there so I suggest checking common.txt, the tech bible and this https://doomwiki.org/wiki/Macro

Edited by Kore

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×