Jump to content
  • Sign Up

Archived

This topic is now archived and is closed to further replies.

FavoritoHJS

[IDEA] Classic Protocol Extension Wishlist

Recommended Posts

Overrideable Blocks: basically a normal, renderable block that can also be placed over, like tall grass or snow in MC

DEPRECATED: not useful unless you HAVE to input an id for each possible block position, which no packet does atm.
Noop ID: Reserve the highest id representable (currently 0x3FF, 1023) as a "noop" - this means that trying to place this block in any way results in nothing happening, leaving the current block in its place

Extended Extended IDs: Increase the highest valid block to 1023. Will need to find a way to fit the extra 256 ids into the system MCGalaxy uses, which should be possible if so much as a single free bit is found in all size-constrained structures.

Advanced Filling: Adds the following:

  • A slight modification on how block indices are used: Indexes -1 to -256 mean "skip forward this many indices".
    This means, for the most common operations (large fills or copies, for example), poorly-compressing number changes are replaced with long runs of a few numbers (with the most common case of -1 being 4 FF bytes), all at the low cost of shrinking the maximum world area size by 256 - assuming unsigned ints for the index are even enforced, otherwise there's no change!
  • Paletted Bulk Update: Many operations tend to modify a large amount of blocks, but only do so with a few block types. This packet takes advantage of this redundancy to decrease size of payload data. TODO: Check if this is worthwhile in bandwidth.
    • Count is an unsigned integer, just like in BulkBlockUpdate
    • 16 block definitions (totaling 16 bytes for non-extid or 20 bytes for extid)
    • 256 ints for block indices, same as BulkBlockUpdate
    • 128 bytes for what block id is used for this position.
  • Bulker Block Update: Same as BulkBlockUpdate and its paletted counterpart, just with all fields increased in size by around 16x, creating a larger packet that should be able to compress better over the network.
    (if you aren't transparently compressing packets, it might be worthwhile to make these a variable-length packet for a compressed version of this)
    Count can become a short or remain as a single byte, whose value is multiplied by 16 to get the used count. Up to 15 extra SetBlock packets after this should be small enough to not really matter.

NEW! 01-12-23 Model part properties: 2 new property type values, each one being a bitmask, with each bit enabling or disabling one of the 64 parts of a model.
Useful for making multiple small variations of a single model without relying on transparent textures.
Alternatively, more properties can be used, and a way to turn such info into an animdata field added to allow for further per-model customization.

 

Sounds: Already explained here:

 

Share this post


Link to post

Maybe for the paletted bulk block update it should have a byte for how many bits should a block id have, the number should be log_2(count) and be the nearest multiple of 2, or 1. And thus instead of storing let's say 128 bytes for 4 bits per each block of indices it instead stores 32 bytes if it's only a single block in the palette.

Share this post


Link to post

Noop ID already exists, it's block 0 (air). What would be the purpose of adding another one?

Share this post


Link to post

Idea for Wishlist

•a translator like twitchTransFreeNext

this phyton script works fine with twitch / IRC but dont react direct to ingame written text.

i think its because in IRC the Messages from Game sends colornumbers and something ...
from game to IRC:

ingame:

Quote

&a+ &7lunaraz &f+ ☺
&c- &7lunaraz &f- 😞

in IRC:

Quote

21:17 BeatsueppchenBot: 09+ 15lunaraz + 🙂
21:18 BeatsueppchenBot: 04- 15lunaraz - 😞

tried to use the translator from ingame looks in IRC:

Quote

23:15 BeatsueppchenBot: 07RonXTCdaBass: en: kann leider nicht direkt ingame übersetzen...

so would not translated 😞

____________________

and translator using in IRC:

Quote

23:01 RonXTCdaBass: en: Übersetzter Text ist leider nicht ganz übersichtlich.
23:01 BeatsueppchenBot Unfortunately, translated text is not entirely clear. [by ronxtcdabass]

looks ingame:
 

Quote

 

&b(IRC) ronxtcdabass: &fen: Übersetzter Text ist leider nicht
> &bganz übersichtlich.

&b(IRC) * beatsueppchenbot Unfortunately, translated text is
> &bnot entirely clear. [by ronxtcdabass]

 

 

now i think, you understand what i mean ^^

Share this post


Link to post
7 hours ago, RonXTCdaBass said:

Idea for Wishlist

•a translator like twitchTransFreeNext

this phyton script works fine with twitch / IRC but dont react direct to ingame written text.

i think its because in IRC the Messages from Game sends colornumbers and something ...
from game to IRC

 

I think you can implement that as a plugin for MCGalaxy

Share this post


Link to post
3 minutes ago, icanttellyou said:

I think you can implement that as a plugin for MCGalaxy

Haha ^^

Maybe someone, but not me 😞

Share this post


Link to post

×
×
  • Create New...