I tried!!!


In the devblog for my Better 'Ole game, I mentioned that I had abandoned Unity. However, there are two projects I wanted to revisit and bring to a more complete state—this one being one of them. The rest can go to the junk pile.

I actually started this project back in 2017. At the time, I was searching for ideas to build a Level Editor for another project. What's particularly interesting is how the original Ant Attack stored its data. It took up just 16KB of memory.

The city of Anchester in the original game is stored in a 128x128 array. You can check out more about this in detail here.  Now, take a look at the following data structure:

63,63,7,7,63,63 

63,63,51,51,63,63 

48,48,48,48,48,48 

63,63,63,63,63,63

This translates into a window frame, a door, a short wall, and a full wall as seen in the image below.


To explain how this works: taking the door as an example, the numbers are stored in binary format. So, 63 becomes 111111 and 51 becomes 110011. These binary numbers are then translated into cubes. So the sequence 63,63,51,51,63,63 in binary gives us the door layout.




That's it! Incredibly simple. Following this logic, I used the script found here  to rip the original Ant Attack tape. I then wrote an Excel macro to import it into Excel. With the addition of another macro to reverse the process and output the data into a text file, I now had a very basic level editor. I could design whatever I wanted (using blocks) comfortably in Excel.



Next, I wrote a short routine in Unity to import the text output. What you now see on the screen is the result of that work.

Initially, I had an early version of this online, where you could walk around the city, but it lacked any game mechanics. I decided to revisit the project and try to add those mechanics. What can I say—I tried!

It's frustrating in a way, because when it works, I get the feeling that in the hands of someone more skilled, this could turn into a brilliant game. But I ran into a number of challenges. Most notably, picking up a project that had been left half-finished for seven years was not a good idea. Before abandoning it originally, I had added some basic rescue mechanics. In hindsight, I should have started again from scratch.

The gun mechanics came courtesy of Easy FPS, and not to criticise a free asset, it didn't work the way I needed for the game, especially the behaviour I wanted when it came to camera switching, so I came up with a few workarounds, but frustratingly I couldn't find a way to easily adjust the mouse sensitivity (in the manner that would work how my game works).

The NavMesh also drove me nuts. I'm not entirely sure why, but most of my issues seemed to stem from the obstacle radius setting on the NavAgent. Getting the NavMesh, the environment, and the rescue mechanics to work together was a constant balancing act. In an earlier version, I had the ants able to climb the steps (which, from playtesting, was terrifying, I might add), but I eventually had to "bolt" them to the ground. As I said, this really needs someone with more expertise.

I also experimented with different spawn mechanics—at one point, I had a fairly complex setup with patrols and ants appearing in nooks and crannies. But again, I had to scale everything back to make it functional.

I just want to shoehorn something in about gameplay. I am aware of remakes of the original, but from building this, I see so much potential, and I just want to chuck my two pence in. If I had the skills, I would go one of two paths with this:

  1. Plane Crash Scenario: The first would be a plane crash in the city of Antescher. I like the idea of the player having to fight their way out of a tight spot, and could introduce some survival mechanics – I especially like the idea of being able to have fire torches to mark a safe route to evacuate the passengers from the crash.
  2. Sadistic Partnership: The other route, based on the original game's inlay (Below, I would make the couple mentioned a rather sadistic partnership. Perhaps a mechanic where they dare each other to complete challenges in Antescher.

Let me end by talking a bit about AI, which I mentioned in my Corridor update. I did use AI to help with those mind-numbing tasks like checking for nulls, setting, and unsetting states, etc. It was a huge time-saver. I imagine that if this kind of functionality were built into an IDE, it would be fantastic. However, on more complicated tasks, I encountered some odd behavior—AI often provided stock answers that solved the immediate issue but created new problems. Sometimes, it was easier to do things the old-fashioned way.

Another curiosity was that the AI's suggestions seemed to vary based on the time of day, or just pure luck. For instance, it might give everything as if statements one moment, and then switch to select statements an hour later. Similarly, sometimes it would break things down into tiny chunks, while at other times it would lump everything together. No doubt, using AI made my code bloated and a bit spaghetti-like. However, overall, it was a positive experience. If AI could handle all the mundane tasks and refactor code in a consistent manner, it would definitely be a game-changer.


Original Game Inlay 

ANT ATTACK

Softsolid 3D

 

The Walled City of Antescher has rested for a thousand, thousand years

in the midst of the Great Desert inhabited by only the deadly Ants who

have made it their home. The sands have piled up at the walls but for

some reason have never encroached upon the city proper. The City rests

dreaming of past glories, solid and unmoving; the signature of a long

dead race. The City washed clean by the sun's rays. The city lost from

the world of men for days without number.

 

Then one day, one year, one hour, He arrived and She arrived, some say

that they are descended from a race of wizards, some say that they are

descended from a race hidden in a green valley at the North Pole. Who

can really tell these days, how much do we really know about the world

as it was, or as it is, after so long in the cold Dark Ages. Only

Antescher seems to stand inviolate after all this time, teeming with

secrets, yet silent.

 

He and She arrived to play their games through the wind-swept streets,

ousting the ants from their exclusive occupation. He and She are now

wreaking havoc through the ants who for their part kill and kill again

without thought or consideration, just carrying out a biological

imperative. He and She run to and fro, climbing in and out the

buildings, the sound of their feet stretching from block to block.

They laugh and cry out in fear walking with each other just ahead of

the Ants and Death.

 

And above all the drama within it's walls the City of Antescher

watches and watches waiting for the next renaissance and the next

Golden Age. The City seems to have a presence, a huge brooding entity

which hangs over the buildings and which in some mysterious way

controls the destiny of those below...

Files

web24.zip Play in browser
82 days ago

Comments

Log in with itch.io to leave a comment.

hey do you want to team up?

Hi, my free time is massively limited at the moment, but I would be interested in shooting the breeze. 

(1 edit)

give me a shout on my email boyanbotev@gmail.com ?

sorry for the late reply