elmaonline-site open source project

General discussion about the games and the scene.

Moderator: Moporators

Post Reply
User avatar
Kopaka
39mins club
Posts: 6610
Joined: 23 May 2002, 13:59
Team: LAME
Location: In a northern danish city beating YOUR record.
Contact:

elmaonline-site open source project

Post by Kopaka »

Intro
You may have heard some rumblings about this the last year or so, but now we can finally make a proper announcement. So basically since the #developers channel was made in the elma discord, the topic of the eol site has come up. It was quickly clear that if we wanted to see any significant further development on that site we had to start something new (no one, myself included, had any interest in php which the current site is made in) and make it as easy as possible for people to help out (unlikely that any one of us have time to do it alone).

After a number of talks and deliberations we've landed on making a new open source website with some good documentation so it's easy for people to make smaller or bigger contribution and using a technology stacks that's very "in" right now and which from the sound of it multiple people are interested in using. And now we've set up the starting blocks for the website and written some guides to get started, which means we're ready for people to make contributions, which is the point of writing this post.


The plan
The overall plans right now is to release the site as soon as it has any usable features. It will be on a secondary url for the time being, as it will be a long time before it can fully replace the current site, but I'd rather get some new features out as soon as possible. So the first priority is some features that the current site (or the community at large) is really missing right now. Later down the line to completely replace it.

There will be two new urls:
test.elma.online which will be using a test copy of the database, new features will be tested here first, you can mess up here with no consequenses, and remember nothing here will be saved for the real site
elma.online which will be using the real database and can be used as a supplement to the current eol site on elmaonline.net


How to help (technical)
If you have knowledge in web development, or is interested in learning it, you can help developing the site. The site is open source and you can find the repository on github: https://github.com/elmadev/elmaonline-site

The primary frameworks and libraries include:
Backend: NodeJS, Express, MySQL, Sequelize, graphql
Frontend: graphql, react, apollo, redux

It may sound like a lot but if you know javascript, (and html and css for UI) you are pretty much ready to start. If you don't know react I'd suggest starting with a generel react guide/tutorial to get a feel for it. Afterwards check out the readme and docs on the repository which explains how the different technologies are used on the elmaonline-site.

To contribute make pull requests to the dev branch. For bigger features it's recommended you discuss it first, technical aspects in either a github issue or #developers channel in discord, and human aspects in either lauta, irc or discord #general.


How to help (non-technical)
If you are not able or interesting in helping out with the technical aspects, there's still important ways to contribute. Primarily discussing potential features and testing newly developed ones.

Wether it's completely new features or features from the old site that we'll eventually be remaking on the new, it's always nice to have some inputs on what's really wanted from said feature. Feel free to start such discussions, preferably a new topic for each major feature to keep things clean.

As mentioned above new features will be tested on test.elma.online first, we'll probably have a lauta topic or something to announce when something new is up. Go there and test it out, so we find bugs and any potential improvements there may be.


What's next
If you are a developer take a look at the repo and get a feel for things. You are also very welcome to come with input on the current set up, stack, data flow etc. as it's still early and nothing is neccesarily set in stone yet.

Otherwise a good place to start would be to discuss what are the most important features that the community is missing right now. It can be things directly related to eol (eg. battle rankings) or something more loosely related (eg. recsource).

Currently the test site is online but nothing of value there yet, the design is just a basic starter thing, not what we're planning to use.
User avatar
Ramone
50mins club
Posts: 1966
Joined: 20 May 2002, 15:42

Re: elmaonline-site open source project

Post by Ramone »

The sutoupload of every new level you enter is weird. Ppl start newer versions as battle and ctrl4 is wrong. And when go to site need to find correct one and so on.

Ppl dont wanna lock this cause can keep added level locked if you entered it after adding...

Filling db with useless and never to be used files is weird. Just makes it harder to find.

Best solution?
Elasto Mania - ez better
User avatar
milagros
Cheatless
Posts: 4560
Joined: 19 May 2002, 17:05

Re: elmaonline-site open source project

Post by milagros »

Ramone wrote: 20 Mar 2018, 22:58Best solution?
any solution would require update of the sources, both on the server side and on the client (bs.dll, eol.exe) so I guess nothing will be done there
there were two possible solutions - either it downloads the latest version, or the oldest version
both solutions had their advantages, and I don't remember which one was chosen
[carebox]
User avatar
pawq
38mins club
Posts: 6547
Joined: 24 Aug 2008, 19:56
Team: TR
Location: Southampton, UK

Re: elmaonline-site open source project

Post by pawq »

The first version is ctrl+f4able. Making the last version ctrl+f4able would of course mean that whenever somebody creates a remix under the same name (or even opens and saves the level without any changes and then enters it in eol) would overwrite the original version, which is clearly infinitely worse.

It's sad that there's no good solution, but we've lived with it long enough... Let's just keep one day EOL2 will have this resolved =)
User avatar
Zero
Kuski
Posts: 548
Joined: 19 Feb 2010, 14:16

Re: elmaonline-site open source project

Post by Zero »

pawq wrote: 20 Mar 2018, 23:56 It's sad that there's no good solution, but we've lived with it long enough... Let's just keep one day EOL2 will have this resolved =)
Would it be possible to write a code that gives designers the right to delete their own levels from the database?
I realize it could be abused but that can be made against the rules and strictly ban-worthy.

It would be a step forward, at least.
Rank #1 battler and the champion of BOSS cup :gaa:
36 club since 02/2024
User avatar
Kopaka
39mins club
Posts: 6610
Joined: 23 May 2002, 13:59
Team: LAME
Location: In a northern danish city beating YOUR record.
Contact:

Re: elmaonline-site open source project

Post by Kopaka »

Zero wrote: 21 Mar 2018, 11:17
pawq wrote: 20 Mar 2018, 23:56 It's sad that there's no good solution, but we've lived with it long enough... Let's just keep one day EOL2 will have this resolved =)
Would it be possible to write a code that gives designers the right to delete their own levels from the database?
I realize it could be abused but that can be made against the rules and strictly ban-worthy.

It would be a step forward, at least.
That's something that could be possible to do on the site, unlike any changes to the basic feature of uploading levels as you play which is part of the game code (and hence not related to this topic). Not completely straight forward since it doesn't save the designer/uploader, but can go look at who first played it.
Post Reply