Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Many new features, some fixes #1

Open
wants to merge 52 commits into
base: master
Choose a base branch
from

Conversation

nico-abram
Copy link

@nico-abram nico-abram commented Feb 4, 2017

Hello
This is an amazing server you're working on!
The owner of stepmaniaonline.net said he's interested in migrating to this server eventually(They're currently using https://github.com/concubidated/OpenSMO). I've been working on trying to improve this server a bit for him to use. I'd like to talk to you if you're interested since i'm not very good with python and I'd love working with someone who knows what he's doing(i couldn't find a way to contact you, hence this pull request). There's a test server hosted on stepmaniaonline.net:8888 right now with this fork. If you're interested email me(abramlujan@gmail.com)

These are the things I've been working on:
--Friend/ignore system(With optional notifications when they go online/offline)
--PM(messaging)
--Fix lobby userlist updates
--Fix song ended checking for some cases
--Added support for clients that send chartkeys/songfilehashes/notesizes and FLU(Friendlist Update) packets(I've also been working on the client to add these things). Keeps compatibility with "old" clients
--Some grammar fixes
--Total best and Personal best message display on song end
--All the information on song end in 1 message(So it doesnt take as much space, each message has a line break which wastes some space in my opinion)
--Made "display best scores on song select" a room option, default is off(It can take a lot of space)
--Added judgement being calculated server-side(So if a user is playing on a judge different from 4 we still get the J4 score), points, percentage and grade too.
--Made jumps/hands/quads give more xp
--Added migs percentage/points calculating and storing(This makes it possible to compare scores that are AAA or above)
--Added a room option to display the song_stat's points in the messages
--Added a /profile command that displays XP, rating and rank of a given user
--Added a check to see if all players have the song before starting(Also added a room option to make it possible to start a song even if not everyone in the room has it, though it defaults to false)
--Changed default grade to D(So empty scores arent AAAA)
--Added a wife scoring function, even though it is not used currently(Since wife scoring changes based on a few ms of difference i dont think it's reliable online, because there are delays)
--Store simfiles/charts using chartkeys and song filehashes. The model is like this:
A song is metadata(artist/title/subtitle)
Each song can have many simfiles(Each file for a song) defined by a filehash
Each simfile can have many charts(difficulties) defined by a chartkey
--Added a ranked charts system and player rating/ranking using said ranked charts

concubidated and others added 30 commits October 27, 2016 01:33
TODO: For Rooms that are in the config file, we want them to
be persistent, for those we will add a flag for mark them as
fixed, and add a check before removing the room.
see if all players use hashing(does nothing atm)
…. Add toasties, extra toasty xp and storing them in song_stats
… Store song file hash, chartkey and rate for each play
showing bests scores on song select optional(default to false)
display on message(room option), change display percentage to %
check. Calc migs points on status_update. Change player rating system to
skillet-less.
nico-abram and others added 22 commits January 26, 2017 19:10
validation. Calculate ingame scoreboard grade server-side. Add message
when you play a ranked song
…holds from dp percentage calc. Send migs % with the options string as SMO does.
…d. New tables charts and simfiles. Add wife scoring function in status_update(not used atm).
Moved point/grade calc functions to song_stat as static mehtods of
SongStat. Improve load_ranked_charts script. Add jumps/hands to xp calc
Remove room name from room messages. Decrease default xp gain. Link
ranked charts to a song(metadata). Send message when user rating
updates. Make /profile show other people's profiles.
changes(game starts/ends) and send users that come in the last selected
song instead of the last played song.
table packsimfiles which will be used to link simfiles to packs
remove calc_percentage, dont delete room if static
@Moutix
Copy link
Owner

Moutix commented Feb 5, 2017

Hi ! Thx far all the work you've done! I will be glad to work with you!

Actually I'm trying to improve the test coverage of the server in order to work easily on it. I also have a lot of things to do in the roadmap I have in my mind ^^

I will try to merge the work you've done little by little. Can you do little PR in order to merge it ? Or can you redo this PR in another branch that i will merge to work on it ?

@nico-abram
Copy link
Author

nico-abram commented Mar 4, 2017

Hey! i just finished merging and fixing conflicts with your current repo in here: https://github.com/Nickito12/stepmania-server/tree/experimental
If you could make a new branch in this repo i could make a pull request to that one and close this one

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants