The Grand Mapedit Assistance Compendium

Discussion and queries about building worlds in Blood.
Post Reply
User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Sun Mar 17, 2024 10:19 am

Glad to hear you solved the box conundrum.

Your situation sounds a bit tricky in the way you're trying to structure it. The first step is to see if you can even command a door that requires a key to open using triggers. Again, this is pretty unorthodox and is something I've never tested that I can recall. So, first step is to make a switch which does not require a key to send a command to the door, which does require a key, telling it to open and see if that works. The rest of the deals can be ironed out once it's established that that's physically possible.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Sun Mar 17, 2024 12:23 pm

I set both door sectors to require the skull key to open. I made a button that sends a TXID to open the door, and it worked. So it looks like it is in fact possible to open a key door with a button that doesn't require a key. I think making this a motion detector would add to the ominous feeling even more so the door slowly opens as you approach. Now I just need it to quickly slam shut when Caleb enters, forcing him to slay the beast and get the key.
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Mon Mar 18, 2024 7:53 am

Excellent. Sounds like things are coming along nicely.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Wed Mar 20, 2024 12:57 pm

How can I make enemies spawn in after a certain point? I feel it would be best to have them spawn in after the player is done traversing the roof and is ready to make their way through the train. That way, the enemies won't detect the player from below as they're moving atop the train.
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Wed Mar 20, 2024 1:22 pm

Easy as pie. You will need to provide a TX from a sender of your choosing. You will then make a sprite or series of sprites in the appropriate locations of Type 18: Dude Spawn which receive that TX. The final step is to then add a Data1 value that matches with the monster type. For instance, Data Type 203 is an Axe Zombie. You can scroll through that list to see other monster types and apply them appropriately.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Thu Mar 21, 2024 11:53 pm

I'm just about finished with my map. I just need to know how to make a level ending sequence like the one in e1m3, then it should be playable.

I still haven't made the boos room door slam shut behind the player, but I'm cooking up some ideas. It can wait, I just need to make the map beatable. How do I go about this?

Also, The furnace in e1m3 has vents that swing open so the player can grab a life seed inside. I assume this is as simple as making a sprite rotate marked and interactable?
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Fri Mar 22, 2024 7:18 am

Which part of E1M3's ending are you looking to reproduce?
Your assumption regarding the little opening vents is correct. It may take a little tweaking, but fundamentally it's a vent with a push trigger that activates a rotate marked sector.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Fri Mar 22, 2024 8:34 am

I want the player to have to blow up the train's furnace similarly to e1m3 and have an explosion sequence that ends with the level being complete. And of course it would include sfx like the train screeching to a halt and whatnot.
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Fri Mar 22, 2024 9:43 am

With that question, it's time to introduce the concept of time-delayed triggers. There are a few ways in which to achieve this, but here's my go-to solution.

An image will illustrate this nicely:
.
19.PNG
19.PNG (16.51 KiB) Viewed 1903 times
You would need something to this effect. Here's what's going on:

This is a switch which receives from an event of your choosing. In your case there will probably be a lever one pulls towards the front of the train - let's pretend that that lever sends TX ID 185, but it can of course be a number of your choosing. The toggle switch depicted then transmits to TX ID 4, which is reserved. This is used to end the level, so any time you transmit to 4, the level concludes. Normally this will be sent by the Seal of Tchernobog, but sometimes maps will have unique endings, as is your case.

It gets more interesting, though, because this is sending at OFF. This means that the TX ID 4 will only be sent when the switch is turned OFF, not when it is turned ON. Then you'll notice a waitTime of 20 (2 seconds).

So what's happening here?

Your imagined lever with TX ID 185 is transmitting to the depicted switch, turning it on. The waitTime assigned to the switch means that it only stays in an ON position for 2 seconds, after which it returns to its default OFF state. Upon doing so, since it is set up to only send when going OFF, it sends the command to end the level.

Using this method we have effectively created a delay and ensured that the level will end after hitting the switch, but only after 2 seconds. This has limitless possibilities and implications attached to it, and you can use this technique any time you want to have an event fire after a delay.

Lastly, the crunchy "train crashing sound" that is used at the end of Phantom Express is number 274.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Fri Mar 22, 2024 10:24 am

I assume to create something similar to e1m3's lever system I'd have a master lever that sends an "unlock" signal to two locked levers which would activate the end sequence when flipped. How can I require that two separate levers must be pulled to end the level? The overall time delay system seems simple enough aside from that.

This may be a question better asked later on, I wanted to know how to add music to the level. To my knowledge, that requires an ini file for the episode. If that's the case, I'll wait to make my other maps first.
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Fri Mar 22, 2024 10:35 am

Oh, I see, so you want to literally copy Phantom Express' ending.

Yes, music is dealt with at the .ini file level. The map itself has absolutely nothing to do with that.

So what you're looking for with regards to the two switches is a combination switch of type 22. This is handled the exact same way as regular switches, except that DATA2 is used to specify the amount of transmissions it will need to receive before it sends a message of its own. A DATA2 of 2, for example, will require two transmissions of its RX ID, either from multiple objects or the same object repeating its state.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Sat Mar 23, 2024 8:58 am

I created the ending sequence and just have a few more questions.

The furnace in The Phantom Express has a "1 way wall" with a flame texture, obscuring the player's vision until they actually enter the furnace. That way, the player can't see what's inside unless they take that leap of faith and go into the furnace. How can I make a 1 way wall like this?

In many of Blood's best maps, especially user-made experiences, Caleb has plenty of quips and various other lines of dialogue that he says when he enters an area, triggers an event, or even when the level starts. How can I make Caleb more talkative in my level so he feels more alive and reacts to what's going on?

We previously and briefly discussed the Seal of Tchernobog in e1m3 and you said it was for bloodbath and teams gamemodes. I checked it in the editor and that seems to be the case. You said as a general rule of thumb, bloodbath and teams gamemodes should have an exit switch. Why is this? I'm curious because I haven't seen it in any bloodbath map I've played.

This one is a little nitpicky, but I noticed a cool effect in The Phantom Express where the door to the engine room opens and suddenly the flicker effect from inside applies to the doorway on the outside, making it seem like the light is escaping the room through the new opening. This makes the doorway a lot more realistic and I wanted to understand how it was done.

Other than these more cosmetic details, the map is complete for singleplayer and co-op. All I need to do is make it suitable for bloodbath and teams with the guidelines you've provided. I'll be having people playtest it soon so I can get feedback and possibly add some changes. If you'd be interested in play testing, do let me know.
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Sat Mar 23, 2024 6:11 pm

The "1 way wall" is done through pointing towards the wall you want to create this effect on in 3D mode and pressing "1". This will flag it as one-sided. You may want to change the elevation of your sectors to enable this, since depending on what you're doing, you do actually need to expose the wall to create the effect. You can't target "air" and need to point at a wall to do it.

Sprites of type 711: Player SFX will create a sound that will play at maximum volume "inside the player's head", which is useful for quite a few reasons, but the most popular use is of course Caleb speaking. You will need to transmit an ID to the sprite and then have it receive the number. You set Data1 to the sound you want to play. Sounds from 3000 generally will be Caleb's quips, though there are some lines scattered around elsewhere, but the 3000 area should get you started. Also worth mentioning is that it doesn't matter where you place the Player SFX sprites; they will sound in your head at maximum volume even if they're on the opposite end of the map.

The reason for including the exit switch in Bloodbath and Teamplay is that it serves as a way for players to advance to the following map (in the episode) without the host having to set up a new game. In this way it gives agency to players which aren't the host to switch to the next level as well. It also gives a nice summary screen for the score. It's very old-fashioned, but it can also serve as a "tournament tracker" of sorts, since it retains the score of previous maps the players were in and carries it over to future ones. It is in no way essential, but I am attempting to impart good habits that will make your Blood levels better, and this is a small and easy thing to do which will enhance the maps in a small way.

I'm unsure if I mentioned it before, but generally you will create a "dynamic light" from opening a door through having the door send a link command (CMD 5: LINK) to a sector which you then provide the lighting effect to. Give it a try and see how it goes.

Lastly, I would of course be happy to look at the map, but you will need to specify how strict you want me to be with my feedback. I have extremely high expectations from Blood maps and will likely be able to point out a few things to consider, but I am of course mindful that it is your very first.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

User avatar
RoosterMange
Still Kicking
Posts: 73
Joined: Sat Jan 20, 2024 9:37 am

Re: The Grand Mapedit Assistance Compendium

Post by RoosterMange » Sun Mar 24, 2024 12:14 pm

The entire level is complete for singleplayer and co-op. I'm working on the finishing touches for bloodbath and teams and would like to clarify a couple things.

Are the bloodbath and teams spawns the same? I was hoping to have both teams spawn in their respective bases whereas the bloodbath spawns would be more scattered throughout the map. That way they'd also have access to weapons specifically stocked up in their bases so they'd have maxed out arsenals from the start of the game, whereas bloodbath would again have more scattered weapon and item placement.

Do items and weapons automatically respawn in bloodbath and teams or do I need to set them to do so? Each time I've played bloodbath previously, the server settings allowed me to have items respawn, but I wasn't sure if this was something bloodbath already does by default.

How can I place a life leech turret? I've tried to place them but they only show the HUD sprite and not an actual voxel of a turret, and it doesn't shoot. I wanted to utilize them for traps since they're stationary and would work on the rooftops nicely.

After these changes are complete, the map will be fully finished for all gamemodes.
"A punk rock song won't ever change the world, but I can tell you about a couple that changed me." -Pat The Bunny

User avatar
Daedalus
The Dreaming God
Posts: 312
Joined: Sun Dec 30, 2018 12:27 am
Location: The Hall of the Epiphany
Contact:

Re: The Grand Mapedit Assistance Compendium

Post by Daedalus » Sun Mar 24, 2024 12:22 pm

BloodBath and team player spawn points use the same sprites. What you could attempt is to flag a series of eight of them for BloodBath and then flag another bunch for teams only. It's not something I've actually tried before, but it might do the trick. There is unfortunately no way in which to specify which starting points are assigned to blue team and which are assigned to red, which is something of a silly limitation which we're stuck with.

Item and weapon rules are controlled by the multiplayer host and applied automatically. You don't need to worry about configuring anything in that regard in your maps.

I believe life leech turrets might be a feature in XMapedit and not Mapedit, so I'm not familiar with any functionality in being able to place them.
Kazashi wrote:Daedalus, I don't care how much you know about Blood, your attitude has to change.
Need a hint? Spill some on the Altar of Stone!

Post Reply