omf2097 / openomf Goto Github PK
View Code? Open in Web Editor NEWOne Must Fall 2097 Remake
Home Page: http://www.openomf.org
License: MIT License
One Must Fall 2097 Remake
Home Page: http://www.openomf.org
License: MIT License
Textures should be cached properly. Maybe also other resources ?
The electric fence, spikes, jet fighters, etc
This should be easy. Switch to the newsroom scene after the match ends.
We need to have Victory/Loss texts in arenas. It should be relatively straightforward to just load up the right animation from .BK when necessary,
11:27 <+huntercool> ah i see lol
11:28 <+huntercool> if you press up at the vs screen, it will always segfault
Should be reimplemented. 0.4 had it.
On resolution change, we should show a confirm dialog. Something along the lines of "If the resolution change was successfull, press OK. Otherwise resolution will be changed back in n seconds". Or something like that.
Ready & Fight texts, effects and sounds
Make the Collision perfect
CD still fails in some places
See this https://www.dropbox.com/s/6goj2vwetlhoj28/collisionbug.png (FIXED)
Doing a move in the air should not set the HAR's x-velocity to 0.
We should support sprite scaling using hq4x or xBRZ. We could do the scaling on sprite load, and we would also need to resize the FBO on which the drawing is done.
Scalers:
The problem is that xBRZ, which looks better, has a C++ header and has GPLv3 license. HQX is C, and has an LGPL license. So, license and code trouble. Could we, for example, make our own external library under GPLv3, which could be dynamically linked ? Or something else ?
Arrgh, why does everything have to be so difficult ? :P
Scrap spawn point is incorrect at the moment. Scrap needs to spawn around the point where the opposing HAR was hit.
When scrap is spawned by other animation, it does not have speed and so it remains floating in the air. Needs to be fixed. Maybe check if animation is scrap, and handle it as a special case ?
We need to give points for different hits etc. The score counters also need to be finished, and we need to have a nice score/combo texts scrolling across screen :)
Would be kinda neat to have support for tag battles.
If one har is pushed back against the wall, and other har is walking towards it, ghostly business appears.
Sometimes, when har falls down, it does not get up again.
For some reason, OpenOMF sounds work just fine with openal-soft, but not with the version that Creative shares. We should try to find and squash these bugs.
Collision detection does not work correctly right now. Eg. hits do not always land, missiled don't hit, etc.
We need to extract the original 16 shades OMF uses for HAR colors. We also need a way to swap those in/out of the BK palette so we can re-render the sprites to RGBA images.
There's 16 distinct colors, each with 16 shades. Each player has 3 colors they can use, so the first 96 shades of each BK palette is reserved for HAR colors.
We need an easy way to change keybindings + somekind of function for loading the keys from config file.
Make the HAR flinch backward when taking hits.
Add Unit tests for stuff in utils/. Other tests would be fine, too.
A simple version of this, at least. Not necessarily fully playable.
Create a basic state machine based bot for two player mode.
We need a dialog for selecting and changing the audio output device.
OpenAL can enumerate devices and select device by name, so this should be relatively easy. Just dump device name to config file, and open correct device on game start.
Training mode was wished on OMF:BG forum. Possible requirements:
The new keyboard handling system doesn't take into account the console and menu overlays (key presses should stop on the overlays, but instead they get passed on to the hars also).
The old system had the problem of not passing all events to the HARs, for example when landing, the har would continue walking forwards, while backwards button was pressed down during jump.
Controlled by the 'bbN' tag.
HARs and other objects sometimes overlap incorrectly. Eg. Jaguar concussion cannon shot when it's overlapping target HAR.
Rewrite engine.
BPx codes in animation strings define the fullscreen color effects used eg. in intro lightning flashes. Somebody needs to find out how these work, and implement them.
Nova grenades are more like bowling balls atm. Needs to get fixed.
High block blocks high moves and low block blocks low moves.
Crash at least in jaguar overhead throw,
Backtrace @ http://codepad.org/B13hxpNQ
There's lots of places where OMF just writes text to an area of the screen; player descriptions, help text, etc.
Basically the API should be like
font_render_wrapped(font *font, char *string, int x, int y, int w, int h, int justify);
Word wrapping seems to be necessary, as well.
We should also, at least, support JUSTIFY_LEFT and JUSTIFY_CENTER.
Implement falling down & getting up if HAR gets hit while in the air.
We need somekind of installation guide for release package.
A dedicated OpenOMF server would be nice. Some points:
Show victory and loss animations for hars after the arena has been finished.
Add joystick support.
There are a lot of libshadowdive structs (like sd_af_file etc.) in openomf code. We could just read everything to our own data structures and then free up the libsd structures, since we're already doing that for most of the data in them.
Pros:
It might be a good idea to split the renderer to plugins, so that we can have both OpenGL renderer and software renderer (for systems that don't do opengl very well).
Before this can be done properly however, we need to know more about what and how the original game renders.
Certain animations have successor animations, that are launched after the animation is done. Need to be implementeg for eg. missiles and jaguar concussion cannon to work.
Console commands should print error/success reports to the console history. Also old commands should go there.
All action (except finalizer moves) needs to be frozen on arena after victor is decided.
Required for Android, IOS, Winphone, etc
Ideas:
Overlay a virtual joypad
use http://wiki.libsdl.org/SDL_GetTouchFinger
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.