User:Enetheru/Dump
I'm so sick of these thoughts that repeatedly pop into my head.. so here is a place to dump them, so hopefully they will stop running around in there causing me strife.
Why is there some weird dedicated IRC chat thingo.. really i just want to be able to load up my irc client and log in to ask questions and hang out.. i really don't want to use some shitty lobby.
Why are the formats so fucked up and difficult to use, and why are there so many. the primary texture for any object should be its diffuse+alpha, then everything else put in a secondary or more textures. it makes no sense to do it any other way.. it creates difficulty unnecessarily.
Why does the engine support so many formats, it may be slightly convenient for that one person who uses some obscure format.. but it fragments the art dev community. pick something that works and use it, everything else can be marked as unsuitable. then all assets will be the same.. if you need to change it, perform a system wide change.. also i cant imagine how much code maintenance that must be to support. this goes for 3d formats as well as 2d formats.. official documentation should pick one and stick to it.
Why is one of the core tools Mapconv separate from the engine, considering spring is supposed to be an engine which others use, the fact that mapconv isn't treated as an integral part of the whole is ludicrous.. currently its suffering bitrot and incompatibility due to lack of maintenance.
The tools are the most important part of an engine project, and yet they receive fuck all support. Abstracting away the difficult shit is how things get done. templatizing and documentation, pipeline integration, etc are far more important than a 0.01% optimization. As an engine project i have no idea why tools have been left out of the equation like they somehow are not as important.
Network infrastructure.. or infrastructure in general is also a tool.. if i want to create a game using the engine i don't necessarily want to integrate with the rest of the spring community, but i want it as an option.. when i download the package i want to have the tools to create me own game and release in multiple ways. a client, a server. and the server i want options for not just a host, but a chat host, file server for maps and mods, mumble server.. basically for a client i just want the lobby + engine.. but for the server i want Live CD/meta-package that auto installs all components and has shell scripts all made to run all services on the host. that way i can use the engine to make my game, and then run servers completely independently from the rest of the spring community. I also want the options to not run independently, if my game is small, or experimental.
Upgrading the tile based mapping/implementing the original vision
current map rendering =
rotation
the tileindex inside the smf uses 32bit unsigned integers to store the index, thats 4 294 967 296 tiles that can be referenced.. lets put that in perspective..
- if every tile was unique
- the map was square
- 32x32 was the smallest tile size
that's a map size of 4096x4096.
the current recommended maximum size of maps is 32x32... so you would have to reference 16 384 different smt's with unique data the same as a 32x32 map to use up all those integers... I think we have unused data in the map format!
What would be good is a dual strategy, if you dont need all the bits, dont use all the bits and pack up the data tighter, this would definitely help smf size, but compared to the smt only a drop in the ocean.
we could use the unused bits to specify rotation, 28 bits still leaves 268 435 456 tiles thats still a map size of 1024x1024 of unique tiles. but I think a round figure like 24 bits for tile references, which is a map size of 256x256 unique tiles, leaves 8 bits for extra purposes.
2 of those bits can be used to specify tile rotation, if your map is mirrored on the x and y coordinates then you can receive a 4x reduction in smt size.
tile size
the current tile size of 32x32 pixels is too small to use as a tile based map, being able to change the tile size will make constructing these types of maps much easier. I need to read the codebase a little more to fully understand.