Files
Bubberstation/code/__DEFINES
Ghom 41b8d99401 DNA code now supports unique identity and features blocks of different size. (#62303)
#61980 (694c2999b0) has uncovered a few issues with our dna datum code. Mainly the lack of support for ui/uf blocks of different sizes.
So, in order to fix this issues, I had to create four global lists, two for UI and UF blocks which sizes differ from DNA_BLOCK_SIZE and two more that store the points in the ui and uf strings where different dna blocks start (this way we avoid having to calculate them every getter and setter proc call).

This will add support for heterogeneous ui/uf block sizes and make 24-bit color features and identities possible.

To the maintainers of downstream codebases: Remember to add your modular code ui and uf color blocks to the identity_block_lengths and features_block_lengths global lists respectively ... Unless you have rewritten dna code on your end. If that's so, good luck.

Tested and working (unless CI says otherwise).
2021-11-22 18:09:09 -08:00
..
2021-11-22 12:56:17 -08:00
2021-06-10 23:09:34 +02:00
2021-11-16 21:54:21 +01:00
2021-11-08 23:52:30 -05:00
2021-11-08 01:36:27 -08:00
2021-07-26 16:58:18 -07:00
2021-07-01 17:18:06 -07:00
2021-04-22 14:48:47 -07:00
2021-07-26 16:58:18 -07:00
2021-07-26 16:58:18 -07:00
2021-03-26 10:01:43 +13:00
2021-09-17 21:04:47 +01:00
2021-05-19 19:44:04 +12:00
2021-10-28 19:14:40 -03:00
2021-11-05 21:39:14 +02:00

This folder is full of #define statements. They are similar to constants, but must come before any code that references them, and they do not take up memory the way constants do.

The values in this folder are NOT options. They are not for hosts to play with. Some of the values are arbitrary and only need to be different from similar constants; for example, the genetic mutation numbers in genetics.dm mean nothing, but MUST be distinct.

It is wise not to touch them unless you understand what they do, where they're used, and most importantly, how to undo your changes if you screw it up.

  • Sayu