I’ve recently begun a project to port Tainted Elysium from Flash to HTML5. The reason for this is that I decompiled Elysium, intent on modding it, only to find that the code is procedural and not very simple to mod. Long story short, I am making an unofficial, unsanctioned port of Elysium with the intention of making the code easier for Atticus to work on by using OOP practices, and teach him those practices. In addition, the change to HTML5 future-proofs the project, since there are rumblings at Adobe about just killing Flash. This project will be sent to Atticus at its completion with full source code, documentation, build system, and licensing rights, effectively making it his, allowing him to do whatever he pleases with it. I am making my own engine at the same time, but it’s being built around the needs of TE and may or may not be released.
To clarify, Atticus has not granted me permission to do this, and I fully expect him to be unhappy with me, despite the intent and direction of the project. If there are repercussions, I will accept them. By the same token, I am not intending to disrupt TE’s development and will update this port as Atticus adds to TE, making a weird sort of parallel development cycle. I will not be adding or removing features or scenes, in order to keep things simple. Should he request the code, it will be immediately provided, no matter the state of development.
Technical stuff:
[ul][] Engine: Custom (Venture)
[] License: Game: Proprietary (for now), Engine: MIT, but unreleased (for now)
[] Language: Coffeescript, some Javascript
[] Scenes: Markdown + Jinja templating + YAML header metadata
[] Authors: All credit goes to Atticus Arc, all blame goes to Herbert
[] Status: Early development (no public release)[/ul]
Detailed status:
[ul][] UI: Mostly working, sans silhouette
[] Scene Engine: Fully working
[] Templating Engine: Fully working
[] Base Creature Structures: Stats somewhat working, organs/limbs/genitalia are stubs but working, everything else WIP
[*] World Navigation: Planned (engine will permit both TiTS and Tainted Elysium-style navigation)[/ul]
Example Scene:
title: Test Scene 1
author: Herbert
#bust:
location: Base Camp
flags:
- no-saving
- no-loading
- slow-fade
buttons:
0,1:
label: Main Menu
tooltip: This button will return you to the main menu.
actions:
- set-scene: Main Menu
0,2:
label: Next Scene
tooltip: Takes you to the test scene.
actions:
- add-stat:
stat: Lust
amount: 5
- set-scene: Test Scene 2
---
# Hangar
{# Pluralize is a non-standard filter added specifically for Venture. #}
You enter the hangar, blinking like an idiot as your {{ "eye" | pluralize(PC.Eyes.length) }} adjust to the blinding plasma-arc lamps illuminating the area.
{# Adding a "-" on one side of a Jinja/Nunjucks statement disables whitespace on that side. We use this on the if-structure below to keep the output on one line. #}
Once your {% if PC.Eyes.length > 1 %}pupils finish{% else %}pupil finishes{% endif %} contracting, you do a quick survey of the hangar,
{% if Ship != null -%}
and quickly find {{ Ship.ProperName }} among
{% else -%}
and are immediately made jealous of
{% endif -%}
the motley collection of spacefarers parking their crafts in this structure.
… turns into the attached image (after adding some statbar test code to the .scene.coffee).
FAQ:
Q. Why?
A. Because.
Q. No, seriously, why?
A. I’m always tinkering with things, and TE is my latest tinkering session. I have this strange fascination with refactoring and design. I also like where TE is going and hope he keeps it up.
Q. The UI is different
A. I haven’t exported assets from TE yet and I want to have the layout working the way it does in TE before I start screwing with image assets. HTML handles positioning differently, so it is a gigantic pain in the ass to get things to line up on the image. The UI is designed to use screen positioning, so that shouldn’t be as much of a problem, but it’s still something I want to tackle later.
I am in IRC if there are questions. This is a throwaway account, so will disappear after Atticus takes over/bans me/whatever.