2017 roadmap

Started by Simon, March 01, 2017, 07:25:23 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Simon

2017 -- 2018 -- 2020 -- 2022 -- 2023




Hi,

D Lix has usable singleplayer and editor. You can play the community pack and Rubix's levels. I have begun on the networking last year already, but you can't play yet. The ship can sail in a lot of different directions from here.

Networked mode: Push this towards minimum playability. Coordinate some test games on IRC (quakenet #lix).

NepsterLix: High-quality pack, I want to ship NepsterLix with the game, but I've never prompted Nepster directly about it. I'd host the proofs (= replays that guarantee solvability) on my proof collection on github.

ClamLix: Clam hasn't been active for over a year. ClamLix (level pack) is still awesome. Some levels rely on C++ Lix features (time limit, trampolines, physics details). Should we ship this with the game? We can alter levels slightly, then go for 100 % replay coverage as a community project, like we did last year with the lemforum community pack.

Tilesets: Improve the paper-cut-out look on some Matt tilesets, replace my 10-year-old programmer MS-Paint art with nicely textured and shaded graphics, etc. Lots of little things. Draw idling animations on traps. Jamie does idling animations by overlapping a no-effect gadget with a trap, idling animations are super important.

Music: Icho frequently pushes for this, so worry about this more. Ship a ton of oggs with the game? Ship tracked music, but Ramond and Rubix don't use trackers?

What are the most interesting middle-term goals? What can wait? What other high-level goals are there? Report bugs on github.

-- Simon

ccexplore

It feels pretty obvious to me that Network mode takes highest priority, followed by tilesets.  NepsterLix and ClamLix can potentially be outsourced to other volunteers, and in worst case we still have two playable packs.  Music can wait based on the fact that we've had music-less C++ Lix for all this time (and it will be outsourced anyway, though in theory Simon can surprise us just like he did with JJ speedruns). ;)

I don't play multiplayer much and admittedly will not be affected much if you stopped working on network mode altogether, but I feel like doing so kind of betrays the more unique/special aspect of Lix compared to other Lemmings clones out there.

Proxima

As far as I'm concerned, the work that still needs doing on the community pack is limited to the following:

* Make a decision on whether to replace Lixes in Arms with another level;
* Check the ordering of the Hopeless levels (and maybe lix counts, although I think we got all the most egregious ones);
* Decide whether the proposed fixes to No More Heroes and Oh No, Not Again! adequatedly preserve the spirit of the original levels, or whether they should be replaced.

For me to be fully satisfied about these decisions, I'd have to finish solving every level in the pack without hints. I hope I'll have time to get back to this soon :lix-grin: Honestly, I was already getting to the point where every level I attempted was wearing me out, but maybe after such a long break, if I get back to it I'd be able to enjoy solving again.

namida

QuoteMusic: Icho frequently pushes for this, so worry about this more. Ship a ton of oggs with the game? Ship tracked music, but Ramond and Rubix don't use trackers?

I assume your main concern with using OGG is filesize? You could always ship lower quality (or tracker-based, even) music with Lix itself, while have the high quality music available as a seperate download - perhaps even downloadable from within Lix itself. (Aside from the "downloadable within the engine" part, this is what NeoLemmix does for the official tracks, and is often done by content creators with custom tracks for their packs as well.) Or even go as far as not including music at all by default, but having it available seperately.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Simon

Network: I agree with ccx's multiplayer-first. Everything else is usable and multiplayer is important. I should focus on this and fix easier unrelated bugs on the side.

Packs: Nepster is working on the inclusion of NepsterLix into the main download, that's great support. I'm leaving it to Proxima to push for changes in the lemforum pack. Whoever wants to supervise ClamLix replay coverage, feel free to step ahead.

Tilesets: I won't look into it right now, but it's important. Any help is clearly welcome, work on tiles as you see fit. Push me for defining and supporting the idling animation.

Music: Package management is probably good for oggs, I don't feel like writing package management right now. But needed anyway if user content explodes. It's not scalable forever to include all user content in the main download. Tracked music gives Lix a geeky touch, I have a weakness for this.

-- Simon

Simon

2017-04 update.

Network: Usable. I've fixed lots of bugs. Not rules complete, overtime is still missing. This remains the main focus.

Tilesets: I will ship Raymanni's 3 tilesets with the next physics update. I want to replace Oriental, which is about 1/3 done.

Will think about other topics after finishing these. I want to honor the Linux filesystem hierarchy standard and allow proper installation on different OSes. There should be installed trees and homedir trees that the level browser mixes into one virtual tree. That will allow Linux packages for Lix.

-- Simon

Simon

#6
2017-08 update.

Done:

Network: Looks good! Overtime is implemented, I'll look for minor bugs and improvements about overtime. Matt already played a session and reported no problems, this makes me happy. Large session this Sunday, September 3rd. (Handicap and neutral lixes are long-term feature ideas, but not urgent.)

NepsterLix: Perfect. lemforum, NepsterLix, and Rubix's levels are 100 % solvable in Lix 0.8.

Tilesets: Great progress. Raymanni's 3 awesome tilesets and my renovation of Oriental ship with Lix 0.8. We have idling animations!

           




Large-scale issues:

Music: Still widely open, no music at all. Still high demand.

Installability: Lix should be installable by standard Linux package management, and new Lix versions shouldn't clobber user data. Allow Linux Lix to read not only from its own directory, but also from, e.g., ~/.local/share/lix and /usr/local/games/lix. Similarly, is Windows Lix OK with reading only from its own dir, or start supporting Users/AppData?

Tilesets: Only some redesigns that won't affect physics. I'm not happy with the lighting in matt/marble: Bevel effect leaves flat edges near top and left. Maybe improve the paper-cut-out look on matt/beach and matt/winter.

ClamLix: Unmaintained, doesn't ship with Lix. Clam has been absent for over a year. Feel free to pick it up, cover it with replays, and redesign the few levels that don't solve in D Lix. Humane replays are in the replay database on github.

Simon

#7
Working on music. On Windows, I can get passable support for ogg, and for tracked music (it, xm, mod, haven't tried s3m but should work) out of the box, Allegro 5 supports them. Nothing to download yet.

On Linux, ogg is OK, but tracked music support is harder. I'm pushing for up-to-date packages. Will see how things develop in the next weeks!

No dependency management yet. I will make one centralized directory for music. Level-specific or pack-specific dependencies (tiles, music) that do not ship with the main download -- I'll have to see how important this is.

I've discussed Installability (FHS-friendly, read from /usr/, write to ~) with Lucki, Arch package maintainer. Haven't written any code for this recently, but Lix uses a virtual filesystem internally that can read from multiple source directories, merging them.

-- Simon

Simon

Looking back on 2017, I hit all these high-level goals. Music, installability, idling animations, networking, ..., everything is in good shape.




Only remaining: Some of Matt's tilesets still have odd shading (e.g., usually near the top side and left side). The large blocks in the marble tileset are good examples of this odd shading:



This tile looks flat near the left and top. Cutting off two rows of pixels would be a good solution. Here's how cutting two rows off the left side would improve the bottom-left corner:



I've written scripts in 2017 to do that for me, but they couldn't handle non-rectangular tiles, therefore I haven't done anything about it. For now, this wrong shading remains issue #245.

-- Simon