top of page

Various Things (Apr 25 2025)

  • Writer: Thomas Tang
    Thomas Tang
  • Apr 26
  • 3 min read

The soldier game has made progress but I’ve given up on finishing it by April. I’m at about 90% of cards (I’ve removed some I don’t like) and can probably finish them by next week. The cards still don’t have names and art and the game still doesn’t have a name, and because of that I don’t think the game will come out next week either. To follow up on last week’s post, I like having negative actions and money, but I decided against doing negative scouts. It just felt too weird and I don’t think I need it.


While working on cards, I briefly considered, should the 2 extra area cards always be in positions 2 and 3, and Camp and Road are always in positions 1 and 4? One advantage this change has is that areas can’t say things like “+1 troop from here” or “-1 troop from here” because if they’re in either area 1 or 4, those abilities may not do anything. And maybe some areas can take advantage of the fact that Camp and Road are always in the same place. In the end I decided I don’t need those effects, and that the variety in having the areas be in any place is better.


But also earlier this week I started toying with Relentless Waves again. I was trying to figure out if there could be a new enemy added, but I didn’t figure one out. An issue I kept running into is that any wave can have multiple of the same enemy. One idea that I thought had potential is a lightbulb; once you defeat it, the arena goes black and you can’t see any bullets for a few seconds. It may have been possible to make it work but it sounds frustrating and the code for it did not work out. Instead I just added some small changes and then released the update. 


First the game can now be played at 150% difficulty. I didn’t verify if it’s possible but it probably is. I tried 175% but it seemed way too hard, and anything above that is straight up impossible (plus super laggy). Then for the enemies, I added a visible timer to the phoenix when it’s defeated, that way it makes more sense when it comes back to life. I also changed the ghost to disappear faster after it shoots, now it actually spends some time invisible. Finally I changed how the UFO attacks. It used to just shoot bullets at you, but now it creates a circle that starts at its position, then grows larger. It’s to take advantage of the fact that it can move around and its circle will take over different positions.


While doing this though, I also wanted to experiment with something: translations. Since Relentless Waves has very little in-game text, this was the perfect time to try out translations. The system I have is that everything that needs to be translated is put into a text file, formatted like this:


Last Update=Last Updated: Apr 23, 2025

Language=Language


If someone wanted to translate the game to a different language, they’d take this file and replace everything on the right of the equal sign with whatever words. The game takes whatever language is selected and replaces all strings with it. I was going to google translate the game to Chinese and then include that file, but I didn’t have any fonts that rendered Chinese characters. This means that you can’t actually see the translation system work (there’s only the English file) but it does work (and if you download the project from my github you can test it). I don’t think I’m bringing this technology to the soldier game though, there’s a lot more words there (both for UI and the cards themselves).


Finally, while I almost never make games using flavor first, there is one idea I have, which is tarot cards. Basically the cards are all named after the 22 tarot cards, and they have 2 sets of instructions: a good and a reversed side. I have no idea what kind of game this would even lead to, and the flavor may just be no good (how would I make a card that represents the high priestess, for example), but it’s the only idea I’ve come up with.

 
 
 

Comments


Thomas Tang (DZ)

tt2195@nyu.edu

+1 (646) 236-5503

Redmond, WA

©2025 by Thomas Tang

bottom of page