Way back when I did the maglev scene, it was just a scene void of any connection to anything in the game. I just knew I needed one so I made it. Now I returned to the scene to add the transit functionality to it that it required.
The transit systems consists of several different screens: the stations, the map and the cityscapes.
AI generated cyberpunk transit map
I was looking into some pretty traditional transit maps at first. I did not care that the routes or tracks made any sense, I just wanted the tracks to look somewhat convincing.
My first pass at the AI generated cyberpunk map was just that. I stayed with this for a long time. I especially liked the one with the diagonal tracks. It looked convincing. I tried some other options as well and ended up with some nice ones.
But then I got a surprise. Midjourney 5.1 had a completely different idea of what an AI generated cyberpunk transit map looks like:
I tried some variations of this generation, but none of the following ones were quite as good as this one. So I decided to use this one. I liked the isometric map as it gave a sense of the city, it would not be an abstract map of train tracks, but it was an actual map of a city. A proper old-school adventure game over-world map!
It did have some UI graphics on top, but I was able to quickly get rid of them in Photoshop with the new generative fill tool.
I then spent some time recreating the UI graphics on top. Marking locations that I had already created and named the 2 maglev zones. The idea is that you will need to get a ticket for both zones during the game to access the whole city.
I am not sure yet though are all the locations available from start, or do they appear on the map as you know of them? Like in the original sam & max game.
The location markers on the map are stationary for now, but eventually I will be adding animations to them.
The location icons I also generated with midjourney. They are not necessary, but as art creation is so easy with AI, I figured why not have them in there. So many things can have additional graphics when the creation is 0 effort. The prompt for these was “transit logo for ### neon –v 5.1“.
I did redo the train removal from the generated image with photoshop generative fill.
I plan to create unique stations for each location, but reuse the same train. I will also do a detail modeling pass on the train to make it work better from angles it was not meant to be seen from.
When traveling from station to station, I imagined there would be these grand cityscapes that act as transitions. Eventually the scenes would contain animated flying cars, lights and clouds. But that will be an update for another week.
The maglev map UI element is pretty simple. I have a large image that has a sprite version of my screen shader with some buttons on top.
Each of these buttons are set to sun an action list when clicked on. The action list has 2 parameters I need to input: the location name and the inventory item required to make the travel.
I added this required item in order to add zones to the map that allow for some additional puzzling and to logically lock of portions of the game map until the player progresses.
The actionlist that the buttons run looks like this:
First, we check if the player has selected a location they already are in If they have selected a new location, we check for the required inventory. Both of these checks have a custom fail state.
When everything is OK for travel, I run an actionlist that exists in the scene, this list makes the player walk to the train and triggers the train animation. After this is done, we return back to this list to switch on a global variable called “travel mode”, set a global variable for what location we are traveling to and switch to the intermediate travel scene.
The travel scene will be just a few seconds long cutscene of the train traveling in the city.
After this cutscene is over, we jump back to the maglev scene, but this time, as the “travel mode” variable is on, out character does not walk in from the doorway, but from the train. Now if we exit this maglev station, the global variable for the current location [var:0] is used to load the scene outside of the station.
The action list system that comes with Adventure Creator is a very powerful tool for scripting for triggers and events. It allows you to build very complex things and you can add your own modules to it that do whatever you like. I am a big fan of it!
Eventually we will have different maglev stations for each location and then I will do this transition a little bit differently, but for now it will work like this.