Skip to main content


Command-based navigation is working again, #uxn emulation is becoming ever more configurable!

See the demo below, in which the client feeds the command "go 100 200 400" to a ship, which will set the target coordinates for a PD controller.

(Also, the memory layout of a ship is defined completely in Lua, the engine core needs to have no knowledge of it.)
#uxn
in reply to manifoldslug

how are you handling fixed points in uxntal? Are you using d6's fix16.tal routines?
in reply to Devine Lu Linvega

@neauoire Oh, that's a good one.

It's integers all the way down! In the approach I'm scripting, the ships just refer to points in the world using three shorts. However, the engine stores their coordinates on a uint32_t, so the simulation has access to an extra 16 bits of precision, while the ships will just use the high 16 bits.

This way, the ships can move about with okay precision, and there's no need for fancy math just to handle coordinates.
in reply to manifoldslug

wow, I haven't seen many people venture in 32-bit math in uxntal. Very cool.
in reply to Devine Lu Linvega

@neauoire Sorry, my explanation gave you the wrong idea...

The engine stores coordinates on 32 bits, but in the default world, when you are writing uxntal, you'll only have to deal with the higher 16 bits.

The default world will avoid exposing the lower 16 bits to decrease the complexity players need to deal with.

However, there's nothing stopping someone from using a different representation if they decide to script their own world.

Lo, thar be cookies on this site to keep track of your login. By clicking 'okay', you are CONSENTING to this.