Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . GitLab

Roadmap for version 0.3.0 Expand all | Collapse all

44% of 7 tasks completed. 5 open tasks:

FS#34 - Improved options menu Expand Collapse
Add an improved options menu with video, audio, controls and game settings.

TODO
- video settings
- menu to configure game settings
- merge settings menus into a single, tabbed window

DONE
- menu to configure controls
- menu to configure player settings (name, colors, ..)
- menu to configure graphics settings
- menu to configure audio settings

FS#59 - Improved map menu Expand Collapse
Improved map menu, implement a 'galactic overview'. Provide galactic coordinates for each zone.
DONE
- add Info record type for zone info
- add Zone location
- add galactic overview to map
- add Zone::info() to network message
- add Zone::flags()
- add Zone::flags() to network message
- add Zone::location() to network message
- add Zone::color() and use it on the galactic map
- add Zone::color() to network message

TODO
- mechanism to request zone map content in multiplayer games
- do not delete client-side ShowOnMap entities in multiplayer games
- show jumpgate links on the galactic map (this requires engine infrastructure)
- mechanism to show only visited places
- map zoom

FS#96 - Problems while docked at another player's ship Expand Collapse
The following issues appear if you're docked at another player's ship

TODO

- If the host docks a planet or a large base and you launch, you'll spawn inside the planet.
- Space dust isn't rendered if the host moves
- Correct undefinied behaviour if the host gets destroyed, docks should be destroyed as well

- Note: In theory, recursivedocking should work (player A docked at B docked at C),
issues should be resolved accordingly

FS#104 - Improved inventory menu. Expand Collapse
The current inventory menu is too confusing.

TODO
- tabs for cargo/weapon/equipment
- show weapon slots
- show mounted weapons inside their slots,
mounting/unmounting a weapon moves it back and forth
between slot and inventory

FS#109 - Button Tooltips Expand Collapse
The ui::IconButton class needs to support tooltips.

It might be a good idea to implement this at the Widget level,
and display it for any widget whenever a tooltip text is set.

Roadmap for version 0.4.0 Expand all | Collapse all

2% of 6 tasks completed. 6 open tasks:

FS#15 - Player-to-player trading Expand Collapse
Add player-to-player trading.
Implementation:

* Docking player ships should require owner permission
* Player shops
* Player must be able to decide what items to sell, at what prices.
*'tradeable' flag
*shop allows multiple buyers, player-to-player only one.
*Player factory ships, base factories, per-item adjustable conversion rate and ratio.
e.g. 2 units of niobum to 1 superconductor per 30 seconds
FS#18 - Equipment Trading Expand Collapse
The purchase and selling of ship equipment such as weapons.
FS#28 - Equipment Expand Collapse
Weapons, shields, armour...

TODO

- Shields & armor
- Mining equipment ?
- Misc equipment

DONE

- Weapons
FS#33 - Soundtrack support Expand Collapse
Add client support for playing background music.It should be possible to define a number of audio tracks per zone,
for the intro, and make provisions for 'battle music'. Investigate support for FLAC, OGG and MP3 audio formats.
FS#36 - Player signals Expand Collapse
Implement a system where players can send arbitrary signals to each other
(arbitrary, from the point of view of the network protocol). This would be used
to send trade and docking requests, and to replace the silly 'hail' command
with a 'request for private chat'.

In the future this could also be used for other signals, like players declaring
their hostile intent.

It might also be possible to use the signals mechanism
to exchange targetting info.
FS#106 - HUD camera mode button Expand Collapse
The HUD lacks an iconbutton to change and indicate the current camera mode.

TODO

- Add an iconbutton to the hud, change the icon depending on the current camera mode
- Add three camera icons to icons.svg:
track (aka third person)
cockpit (aka first person)
free (aka turret view)

Roadmap for version 0.5.0-alpha Expand all | Collapse all

32% of 14 tasks completed. 12 open tasks:

FS#17 - Tractor beam effect Expand Collapse
Implement beam particles for tractoring cargo.

The tracktor beam is currently completely server-side,
this will require additional engine infrastructure or a hack.

Instead of 'beams' a general 'effect' could be created.
It is possible to create an entity holding a model with
a particle system (like projectiles) representing the 'beam-in'
effect (think star trek transporters).

On the other hand, implementing beam style would open the door
for beam weapons.
FS#24 - Weapon Models Expand Collapse
Models for cannons and turrets to be used in the trade menu.
The colors used on the model should reflect the projectile color.

Laser: red (civilian)
Blaster: yellow (military)
Ion: light blue (lindblade)
Neutron: green
Metrion: pink

TODO
- Proximity mine
- Smart mine

- Laser turret
- Improved laser turret

- Blaster cannon
- Improved blaster cannon
- Blaster turret

- Ion cannon
- Ion turret

- Neutron cannon
- Improved neutron cannon
- Neutron turret
- Improved neutron turret

- Metrion accelerator

- Singularity projector (fires missiles)

DONE
- Dumb mine
- Laser cannon
- Improved laser cannon
- Advanced laser cannon

FS#31 - Playable, Consistent Universe Expand Collapse
Requires elaborate trade routes, balanced ships and ship hardware, adequate difficulty curve

TODO

- implement all starsystems on the starsystem roadmap
FS#32 - Master Server Expand Collapse
Master server and multiplayer server list.
FS#56 - Extremely slow to load. Expand Collapse
Windows is extremely slow to load compared to other platforms.

$time ./src/osirion +connect +quit

Linux: 3.3 seconds
Windows: 23.7 seconds

This may be related to the binaries being produced via mingw:

http://osdir.com/ml/gnu.mingw.msys/2006-03/msg00024.html

The best solution is to probably use a Visual C++ toolchain for windows binaries.
FS#65 - Material blend modes. Expand Collapse
Shaders need a way to enable different OpenGL blending modes, like Quake 3's "blendFunc". This will allow special effects like light beams and 3d exhaust effects.

DONE
- blenfunc none
- blendunc add
- blendfunc blend

TODO
- blendfuncGL_SOMETHING GL_SOMETHING
- blendfunc filter?
FS#67 - NPC support Expand Collapse
Support for computer-controlled allies and opponents.

- Better AI control
- Dynamic patrols

FS#71 - Faction and Reputation support Expand Collapse
Support for factions and player reputation.

Reputation influences prices, docking rights and NPC hostility.

TODO
- trade reputation
- player faction membership

DONE
- factions.ini
- faction colors
- faction reputation
- player reputation
- entity faction
- game:: player reputation savegame
- client:: reputation window window: stats refresh + reputation bars
- player reputation network transfer
- entity faction network transfer
- 'give reputation' function
- game:: deny dock on hostile stations
- game:: change reputation if player kills an NPC
- refresh reputation window if player reputation changes

FS#94 - Space mine tracking capabilities Expand Collapse
Implement seeker mines and tracking mines.
FS#98 - Material texture stages Expand Collapse
To ease the transition to a multitexturing rendering environment, I propose that we fully adopt Quake 3 shader scripting. Currently, we support a simpler version with a single texture stage in mind.

DONE

- Support for material with multiple layers

TODO

- OpenGL multitexture support
- Improve syntax

Exmaple of current implementation:

shader/path/name
{
qer_editorimage path/to/texture
{
map path/to/texture
entity
}
{
map path/to/glow_texture
fullbright
blendfunc blend
}
}

---------------------------------
Quake 3:

shader/path/name
{
qer_editorimage path/to/texture
other_keywords
{
map path/to/texture
}
{
map path/to/texture2
blendfunc ...
}

FS#105 - Admin commands Expand Collapse
Implement administrative commands. Players should be able to receive
and 'admin level' enabling them to execute special administrative commands.
Those commands should still be available to the console.

The admin level is unrelated to the in-game player level.

TODO
- Implement a core::Player admin level property
- Implement admin command functions (core::Func)
- Implement admin.ini to define admin levels and the commands they have access to
- Add admin commands to handle player admin levels
- Turn existing core administrative commands (kick, mute, ...) into admin commands
- Change existing cheats (give, goto, ..) into admin commands,
have them take a player name as argument (e.g. give ingar credits 1000)
- Combine the 'jump' and 'goto' cheats into a 'teleport' command,
make it work while docked, support teleporting players accross zones
- Add 'nudge' admin command.

FS#108 - Model: pirate base Expand Collapse
Pirate base models, to serve as NPC headquarters.
Several generic models are required.


Roadmap for version 0.9.0-beta Expand all | Collapse all

0% of 5 tasks completed. 5 open tasks:

FS#20 - Economy Expand Collapse
Pseudo-dynamic economy support.

Ideas:
- Stations and planets are supplied by NPC convoys
- Prices fluctuate according to availability
FS#66 - Nebula support Expand Collapse
Support for decent-looking nebulas.
FS#68 - Asteroid field support Expand Collapse
Support for asteroid fields.
FS#69 - Framework for player missions Expand Collapse
A generic engine framework to support player missions.
core support, client menu support, network command support.

FS#70 - Trading mission support Expand Collapse
Support for trading missions.

* Transport cargo from A to B type missions

* Emergency transport type missions like in e.g. Railroad Tycoon
- the longer the transport takes, the smaller the earnings (perishable?)
- Influences reputation

Roadmap for version 1.0.0-release Expand all | Collapse all

35% of 2 tasks completed. 2 open tasks:

FS#30 - Improved particle systems Expand Collapse
Improved particle systems: weapon effects, engine effects, explosions, smoke...

An improved framework for particle systems unifying all of the above.

DONE
- Particle system code needs to support multiple ejectors per system,
at the moment a particle system is created for each ejector
- Add fine-grained control parameters (alpha start mid end) (radius start mid end) ..
See tremulous particles
- Streak style particles (aka 'trail sprites')
- replace [ejector] with [sprites] [flares] [trail] etc
- ejector thrust trigger
- ejector impulse trigger
- ejector explosion trigger

TODO
- Flame style particles -> needs thinking, how to do it exactly



FS#103 - Gunmen Expand Collapse
Allow a player to control (some) weapons on another player's ship,
making him a gunman

The details of this idea still need to be worked out.

Roadmap for version 2.0.0-release

0% of 0 tasks completed.

Roadmap for version Wishlist Expand all | Collapse all

0% of 6 tasks completed. 6 open tasks:

FS#25 - Model weapon slots and positioning. Expand Collapse
Attaching the model/weapon to its associated 'slot' on the ship, and handling the position of said slot.
FS#35 - GLSL Shader program support Expand Collapse
Extend the current Material system to support GLSL shader programs. Normal map, specular map and glow map support.
FS#64 - Tsu-Khan Texture Set Expand Collapse
Tsu-Khan needs a set of textures.
FS#92 - Clean up of material, light, flare and particle color types and Expand Collapse
Clean up and homogenize material, light, flare, engine and particle color types and flags.

Those fx can be triggered by engine states (trigger_impulse, trigger_engine, trigger_destroyed, ..)
The color can be set as color_entity, color_entity_second, color_entity_third, color_engine, ...

TODO
- review/refactor: lights, flares, materials, and particles should have the some options for
triggers and colortypes.
The parameter names in .map file classes and .material files should be the same

FS#97 - Move default fonts from ui::UI to ui::PAlette Expand Collapse
The corrent ui code has default fonts and font size in ui::root().
They have to bo moved to the ui::Palette class and handled like
colors and related settings.

The initial default fonts should be set in the ui::Pallette class.

It might be better to merge ui-style related settings
into a single ui::Stylesheet class and read settings from a .css
file.
FS#101 - Dagon Texture Set Expand Collapse
House Dagon needs a set of textures.

Text Version