MicroTD - Tower Defense for Arduboy

I’d just like to add one thing on the “close-sourcing as anti-cheating”: let’s not forget that close-sourcing doesn’t prevent modifications, it just makes them more difficult, but since most exploits such as auto-aim or see-through walls are trivial to implement, they only become next to trivial by this. So I really think literally the only thing close-sourcing will do for anti-cheating is that it will delay the creation of cheating tools from hours to days, and that’s it. Basically give me any popular game and I will find you several cheating tools and videos of cheaters happily cheating about.

Online cheating is definitely a problem, I just think it’s mostly not a game-killing problem, just an annoyance, and that close-sourcing is not even close to a solution. Companies indeed know this and resort to:

  • server-side techniques (correct, doable with open-source as well)
  • player reports (also correct)
  • spyware (not correct :slight_smile: )

Open Arena is basically liberated Quake 3 - it plays exactly the same. If you want something innovative, take a look at Red Eclipse - it’s like Quake but with added parkour elements, plus it has an ingame first-person multiplayer map editor! (it’s voxel based, but supports really tiny voxels, so it doesn’t look like Minecraft at all). I spent a lot of time just in that editor alone. Oh and there is also Tesserarct - it’s a similar voxel-based WIP FPS (I think they’re both forks of some older game) that tries to apply modern rendering techniques, has some really beautiful shaders.

Sorry, of course you didn’t :slight_smile: I guess I have this topic associated with people arguing TAS should be banned, so I wrongly inserted this here.

The skill just shift to a different area – to creation and using the tools and gaining extreme knowledge of the game mechanics and internal working. The skill element doesn’t go away, it just becomes a different kind of sport. For some reason, I am personally captured by the idea of crafting the perfect result (the “reference run”), rather than seeing a great performance, so my preference of speedrunning categories is: TES, segmented runs, world-record runs, and live runs (like AGDQ) last. But I am also glad all of these categories exist because I like seeing the comparisons - it’s crazy how some people get very close to TAS runs :slight_smile:

That’s what all the best security methods in the world do.
Every single security method is just an added layer of difficulty or a means of delaying the attacker.

The aim of most digital security methods is not to make overcoming them impossible, just to make it take long enough that it becomes unfeasable.

The metal shutters people put on shop windows won’t prevent a determined thief.
It isn’t impossible to steal from Fort Knox or the Tower of London, it’s just particularly difficult.
It’s not impossible to correctly guess a password, it’s just very difficult and would take many years to brute force.

It depends on the game.
For some it’s not an issue.
For some it absolutely cripples them.

For others it’s not the cheating that’s the problem but the developer’s answer to it.
There have been times I’ve stopped playing a game because it introduced anti-cheat software that I didn’t trust.

I was half expecting the link to lead to red shell,
though that was more about spying for the sake of spying.

Spying (without very explicit consent) is never the right answer to anything.
It’s fair enough if people are happy to agree to it (e.g. I don’t mind helping Steam with their hardware surveys), or it’s minimally invasive (again, I’d be happy to share my PC spec with people if asked and told what they were doing with it), but non-consensual invasive spying is bad.

Sure, the good methods however create a delay of dozens to millions years, here we are talking about creating a delay of days for a price that is extremely high in my view. You know, putting handcuffs on people will probably prevent some people from attacking others, but the price is too high.

Getting dangerously close to our general free software discussion, so let this be my last post on this topic here :slight_smile:

Released version 1.2: I made the game deterministic (doing same things should lead to the same results), added Doxyfile (you can now easily generate documentation by just running Doxygen from the main directory) and a money cheat code (thanks goes to @CrazyVito11 for the idea… it’s activated in a different way though :slight_smile: ).


What changes do you have planned for the future?

I edited a TODO list at the end of the original post. Whenever an idea comes up, I’ll update the list and hopefully I’ll also implement something from time to time :slight_smile:

1 Like

Couldn’t a frameskip be done to ‘speed up time’ in a way that is pretty memory-efficient?

1 Like

I managed to score 42 on the first map. Not sure how much farther you can get since every 2x2 spot had a big tower.


Not much further probably, I tried to make sure you lose somewhere after 50 I guess :smiley:

Done :slight_smile: It can be sped up with the up button now. I’ve also replaced all bytes with uint8_ts.

EDIT: I changed the speedup to A+B button combo as the up button moved the cursor. I also added button repeat function (you can hold the button instead of repeatedly pressing it).


3rd days ago i solder my clone and micro td is my favourite game for this time.
there my wishlist:

  • UP in towermenu goes to upgrades
  • question in yes/no dialog
  • in-game help with towers/monsters stats (mayb in submenu with quit)

and i want to know is magictower does some without upgrades?

1 Like

Thanks for the suggestions :slight_smile:

I think it just attacks, but is weak.

Just curious… Some tower defense games allow you to build while enemies are coming on the screen. Why did you choose to not allow that in this game?

1 Like

Yeah, I’ve been thinking about it too, honestly I had no special reason, it just came to be this way :smiley: It could be a nice mod – maybe a compile time option? I’ll add this as an idea to the readme.

It would be great to also add a new button… Same thing as Play, but double speed, so there is no need to hold down the buttons? I play this game for hours and am afraid I am going to ruin my buttons holding them so long… :scream:

I think the best solution could be hide the cursor during the wave in progress… and then we have 4 extra unused buttons – the arrow keys. Let me add it to TODOs.


Definitely agree. Toggles for the life bars and speed would be great instead of holding down… The cursor could be helpful if it would show the range when pointing at a unit, but that is notvery important at all.

1 Like

Hey, very addictive game! :stuck_out_tongue: :drooling_face:

please help me…what todo to change to the second classic road tileset via macro?
–> thank you :heart_eyes_cat:

1 Like

In the source file line 292 change the

#if 0


#if 1

and then compile the game.