First month, in pictures:
First month, in pictures:
Some really nice ones. Filed for future reference.
UPDATE – some more:
After 8 years, Devastro gets a video trailer. Hooray!
Superforce 1.1 is now available on the App Store. This update brings the following changes:
And here’s a video TRAILER for Superforce:
In the upcoming Superforce 1.1 update I stopped using stb_truetype and went back to pre-rendered fonts made with Glyph Designer.
Before & after switching away from STB Truetype
Unfortunately I had some problems with stb_truetype which I wasn’t able to solve. Some characters from some fonts were cut off on the left and sometimes on top a bit, with no reasonable explanation. Also the glyph shapes in general did not have the right amount of sharpness and smoothness I wanted. Perhaps I’m too used to Mac OS X font rendering? Who knows.
I’m sure most people can use stb_truetype properly and I still have high regard for it (and anything that @nothings produces for that matter) but it seems like this one was not meant for me. I’d still like to finish my own font converter someday.
To make it easier to launch Devastro and Type Raiders on modern Mac OS X systems, I have signed the app bundles with my Mac developer certificate.
When you first launch them you should now get this:
instead of this:
You could still work around that latter dialog by ctrl-clicking and choosing Open or changing your system preferences to run any app without asking, but this seems nicer.
To sign the app bundles I used the following commands:
codesign --force --verify --verbose --sign "Developer ID Application: Tomas Andrle" TypeRaiders.app/Contents/MacOS/liblwjgl.jnilib
codesign --force --verify --verbose --sign "Developer ID Application: Tomas Andrle" TypeRaiders.app/Contents/MacOS/libjinput-osx.jnilib
codesign --force --verify --verbose --sign "Developer ID Application: Tomas Andrle" TypeRaiders.app/Contents/PlugIns/jdk1.7.0_21.jdk/
codesign --force --verify --verbose --sign "Developer ID Application: Tomas Andrle" TypeRaiders.app
Thanks to Andy Brice for his useful article about signing Mac apps manually.
As a little diversion from working on Superforce, I added an interactive GUI editor to NLEngine.
Pressing a hotkey anywhere in the game switches to GUI editing mode. In this mode, I can drag any GUI element around. I no longer need to re-launch the game several times and check if I’ve set the correct coordinates. I just move it around with the mouse until it looks right, then press Save and I’m done.
All in about 200 lines of code, with full undo/redo support and SQLite persistence. Glad I took the time to do this. It’s not actually super useful in Superforce because there the layouts are finalized but I’m pretty sure I’ll use it for something later. Like, for real.
Here, buttons are made aware of the GUI editing mode and will ignore input when it is enabled.
The GUI editor just handles the dragging. The layout (x, y, w, h) is then saved to disk and that’s pretty much it.
Some shortcuts for testing and debugging Superforce:
Wouldn’t it be great to have #2 and #3 in real life? Or #4, when coming back from the pub?
Devastro had a built-in level editor and it was the best thing ever.
For Superforce I did the same thing. Putting extra time into making an editor is paying off. Making levels is really fun.
Superforce levels use tile-based maps with freely moving objects on top. The editor has three modes to allow me to edit everything in a single view.
Pressing “P” switches into playing mode, so I can playtest immediately. ESC resets the game and goes back to editing mode.
The user interface is based on the IMGUI concept: all UI elements are rendered and evaluated at the same time and it’s all done on each frame. There are buttons, lists, draggable items, multi-selection for objects, undo/redo, native Mac OS X dialogs for saving, keyboard shortcuts etc.
As time goes on, I try to keep my development tools up to date. Right now I’m using the following tools.
Hardware
Software
Libraries
I have also started working in my new home office. In my new house.