Last active
December 24, 2015 20:09
-
-
Save edunham/6856310 to your computer and use it in GitHub Desktop.
bravo todo, with links to relevant issues
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[08:00] < simpson> | brutal_chaos, edunham, mythmon, TkTech : Mass ping. | |
There are many things that need to be (re)built. In no | |
specific order... | |
[08:01] < simpson>| * Packet parsing needs to be redone. Construct is both | |
too slow and too unmaintainable. The protocol is big enough that walls | |
of struct.unpack() would be quite reasonable, and we need to figure out | |
how to subparse all of the domain-specific formats. | |
https://github.com/bravoserver/bravo/issues/433 | |
[08:01] < simpson>| * Chat is now structured. A module or two needs to be | |
written to handle both translation of chat languages, and also the | |
repacking and formatting of messages. | |
https://github.com/bravoserver/bravo/issues/434 | |
[08:02] < simpson>| * Chunk caching could be better. We currently have a | |
null-cache strategy; I'd love to have an inigo or something similar | |
providing a cache of chunks. This is easier than it sounds. | |
https://github.com/bravoserver/bravo/issues/435 | |
[08:03] < simpson>| * Redstone is not complete. This requires a careful | |
reading of the source, and understanding the "ASIC" algorithm that I | |
hacked up, but it's not impossible, just arduous. I don't envy people | |
who work on this. | |
https://github.com/bravoserver/bravo/issues/436 | |
[08:03] < simpson>| * Similarly, our liquid algorithms occasionally fail to | |
terminate and are written in spaghetti. Suggestions welcome on ways to | |
improve this. | |
https://github.com/bravoserver/bravo/issues/437 | |
[08:04] < simpson>| * Plugin addressing for chat is very ad-hoc and fragile. | |
I'd like to have some sort of system where each chat plugin hands back | |
a parser, argparse-style, and we chain subparsers to parse chat. As a | |
bonus, this would let us also parse CLI commands and IRC commands the | |
same way. It'll require some elbow grease to bang argparse into | |
submission. | |
https://github.com/bravoserver/bravo/issues/440 | |
[08:05] < simpson>| * Windows still suck. However, with the advent of | |
IWindow, we nearly have the abstraction required to make them Just | |
Work. I'd like to see most of bravo.inventory cleansed with fire along | |
the way. | |
https://github.com/bravoserver/bravo/issues/438 | |
[08:06] < simpson>| * Some state changes are still poll-driven instead of | |
event-driven, which leads to racy or unexpected behavior. For example, | |
it rains when coming onto a springtime server, but just for a second. | |
Why? Good question! There's no single point to work on these, but they | |
should get worked on. | |
https://github.com/bravoserver/bravo/issues/439 | |
[08:06] < simpson>| I think that that's the short list of *existing* things | |
that should get fixed up. | |
[08:07] < simpson>| Now, things that need to get done that we *don't* | |
currently have: | |
[08:07] < simpson>| * Projectiles. A little math has been done for them, but | |
we largely don't have the entity-tracking infrastructure nor the | |
trigonometry to actually implement throwing things. | |
https://github.com/bravoserver/bravo/issues/421 (yeah i only opened this like 8 months ago... it's still blocking me on fixing AI) | |
[08:08] < simpson>| * Fire. One of the best features of Minecraft is the | |
ability to burn villages to the ground with a misplaced lava tile. | |
Clearly we are lacking in this department. | |
https://github.com/bravoserver/bravo/issues/441 | |
[08:08] < simpson>| * Mounts. Epic mounts, whether equine, ovine, or porcine, | |
are simply not implemented. Which leads us to... | |
[08:09] < simpson>| * Mobs. Yes, there is some initial work on mobs, and the | |
"MobManager", but this all needs to be structured and organized in a way | |
that works and is maintainable. Additionally, there are currently no | |
rules for actually spawning mobs, and we should fix that. | |
https://github.com/bravoserver/bravo/issues/442 | |
[08:09] < simpson>| This is my current wishlist. | |
[08:10] < simpson>| Now, where y'all come in is simple. If you have the spare | |
time, the motivation, and the gumption, I'd like y'all to *consider* | |
possibly chipping in. It's not strictly necessary by any means, of | |
course. | |
[08:11] < simpson>| But this is hopefully a half-decent answer to the question | |
"What should I do next to contribute to Bravo?" along with an answer to | |
the follow-up question "But that sounds hard! Isn't there anything | |
easier?" | |
[08:50] < simpson>| Oh, right, the easy things. | |
[08:50] < simpson>| * Update the block list. This is a perennial task. | |
Consider seeing if Burger exports a declarative file that we can slurp. | |
https://github.com/bravoserver/bravo/issues/443 | |
[08:51] < simpson>| * Compile exhaustive lists of missing features. We don't | |
have any; the closest we have is the issue tracker, but we are still not | |
really clear on how to fix the hypothetical issue "Become | |
vanilla-compatible." | |
https://github.com/bravoserver/bravo/issues/444 | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment