forum

Q! me up! - An osu! Matchmaking Client

posted
Total Posts
43
Topic Starter
Sir k1x
Base / Skeletal Version: http://qme-up.tk/base.zip (VB.net)

Server Status: Online (Closed Alpha Testing-Phase)

Website: http://qmeup.de/
Forum: http://forum.qmeup.de/
Ranking: All
Map-Pool: http://osu.qmeup.de/map_pool.php
Connection Check / Error Handler: http://forum.qmeup.de//viewtopic.php?f=13&t=31&sid=8c86938f61e10585d881e408495c4c3b

Screenshots: http://k1x.qmeup.de/index.php?dir=screens%2F

Info:
This client is in an early Alpha testing phase.
I will develop more & more functions into it, so please suggest me anything you think THIS needs Q! me up!

Current Version: 0.0.0.3
Team Setup:
There - [PHP/HTML]
Cookiiezii - [Promotion]
[ Lionheart ] - [Alpha/Beta Tester]
We're currently looking for Alpha/Beta testers and someone who is experience with graphic design / HTML/CSS Styling.
if you are interested, contact me via priivate message or message me on Skype: k1xybr1xy


Hello everybody,

let me introduce you to my idea, Q!(Queue!) me up! - And accept the Challenge!
This client is meant to bring competitive-play to osu!, where players are able to fight head on head to see who is the best.
You can compete in:

Standard Queue

  1. One versus One (Single Elimation)
  2. TAG2 (Single Elimination)
  3. TAG4 (Single Elimination)
  4. Team Versus (2 vs 2, 3 vs 3, 4 vs 4, 5 vs 5) (Single Elimination)
Tournaments

  1. Tournaments (8 Players, 16 Players) (Single & Double Elimination, Best of Three)
  2. Team Tournaments (8 Teams, 16 Teams) (Single & Double Elimination, Best of Three)
  3. TAG2 Team Tournaments (8 Teams, 16 Teams) (Single & Double Elimination, Best of Three)
  4. TAG4 Team Tournaments (8 Teams, 16 Teams) (Single & Double Elimination, Best of Three)
Ladder
  1. Nothing to add yet (A Ladder is planned, it is handled per League splitted into division, but the date is unknown.)
osu! Freestyle!
  1. A Secretly programmed tool to make awesome things :3 (More infos can come at any time!)
Legend: Green - Available/Testing, Yellow - In Development, Red - Planned



Because we are currently in alpha-testing, we need YOUR help.
It is currently on developing, bug fixing etc. and we would be pleased if you can post any bugs/Suggestions or anything else
about the client on this thread or on our forums: http://forum.qme-up.tk/

Please be accurate as possible if you post something. (Screenshot, Error-Message, Log.txt)

If you have any questions feel free to message me ingame, via pm or reply on this thread.

Other Planned Things:

  1. integrating osu!API / Maybe Some parts of the SDK
  2. Website Login / Forum / UserCP
  3. Do a tutorial video
------------------------------------------


------------------------------------------

How the osu!API is integrated
/api/get_user

- Integrated into the Login TCP server.
User-datas will be fetched by a Net.HttpWebRequest with the request method "GET" on a users-login.
the returned JSON Array is being deserialized with the System.Web.Script.Serialization.JavaScriptSerializer class.
a string which is encoded with base64 will be send to the user, decoded and splitted into an array.
it's length is 5 (0 - 5) and stored into the login.ini

/api/get_match

-Integrated into the Matchmaking TCP server.
MatchID is being used to gather the points from the first map that has been played.
by using
if(matchid==array(14)){objectpoints==array(15);}
array(15) contains the reached points from the first map that has been played.
a string which is encoded with base64 will be returned to the user who has requested it and will be decoded.
it's a single-line-string and is globally used.

------------------------------------------

Update History


2013-11-20 15:36:26 UTC
  1. Removed Friends- and the Ranking server (Will be updated to php)
  2. Added some translation to exceptions.
  3. Added clientside exception handler.
2013-11-17 16:46:29 UTC
Updates are listed below:
  1. osu! profile infos are now fetched by the server (I love peppy for giving me such a powerful resource #nohomo :D )
  2. osu! match-stats can now be fetched by entering the matchid!
  3. Everything runs smoothly so far! :) (good signs for an closed alpha test :D)
EYEINFO:

2013-11-14 00:10:39 UTC
moooooooooooore updates!


Updates for a brighter tomorrow:
  1. Matchinfos are now delivered by web instead of TCP (Which gives a sh*tload of ram free :p(Server side))
  2. Fixed an very old bug where the pictures of you and your enemy aren't displayed (Thanks Full-Tablet and Abel!)
  3. The queue for matchmaking is now divided into divisions (Sadly this didn't fixed the server crashes :( )
  4. Profile is now placed at the header, profile will be used for viewing others profile!
  5. New Rank-badges / division badges
EYEINFO:



tomorrow i will do some tests again to see if the server is stable and the client loads everything fine.

stay tuned!



Sir k1x

//EDIT:
somehow i fixed the random crashes at the server lolz :D


How:
using(MySqlCommand cmd = new MySqlCommand(commandLine, connect))
{
//CODE
}
2013-11-11 20:33:48 UTC
Update Day!


im so sorry to tell you that my pc crashed on saturday and didnt saved like 70% of the codes which i have written for the sunday-alpha-test.
anyways, before i can do a public alpha test i need like 4 Players that are willing to test the client and play like 3-4 Matches.
If you are interested in testing the client, you can contact me Online (osu!) or send me an PM!

The Updates are listed below:



  1. Chat is now working properly (Lounge, Match-Chat) (Fixed some bugs where the message were displayed as your name, weird ikr)
  2. Map pool is now protected by SSL
  3. Map's now have the info about bpm and the mapper. (By clicking on the label you will be forwarded to the beatmaps listing entry)
  4. Recent Matches are now viewable.
  5. Private Messages are integrated but not enabled yet.
  6. Settings have been redesigned (Yes, a bit!)
  7. Team Panel added. (Not working yet)

it's time for some pictures!

PM System


Options Panel

[/spoiler

Recent Matches
[spoiler]


Team Panel



see ya soon!


Sir k1x
2013-11-09 03:13:59 UTC
hello there!

something is keeping me from finishing the site and client, it's not like im not working on it, its more like the more i program, the more work is :(
anyways, i think sunday i can do some "alpha-stage testing inserkeyintoregistration playsomematches" thing!

aaand if you didnt notice the website is getting more and more good looking (Compared to the last theme XD)
You should take a look, because i already implemented something which is really good for users that are excited!. :)

Anyways, i also finished the new Map-Pool~

Updates goes where V


  1. Map-pool now can be extend without server-shutdown.
  2. Map Info's are now displayed (Picture & BPM(BPM is just a click away)) (And yes they are hosted on the server itself)
  3. Maps can be downloaded again.
  4. osu! directory. Start osu! Install maps! Install Skins?
••••••• Things that are on progress•••••••

  1. Friendlist
  2. Serverstability (The Matchmaking-server is crashing like every 2 hours because: i dont know)


some eye info:


so far for now!


Sir k1x :)
2013-11-07 01:47:30 UTC

[ Lionheart ] wrote:

Very nice! Been waiting for weeks now :)
By the way, maybe we should reset the scores achieved up until now? :D
No offense against the 6 players that already have got score, i just think it's fairer that way ._.

Yes!

I've made a little bit of cleanup on the client like removing active tournaments / active matches

they will be implemented on the website so they don't eat any ram we need :p

The Top 10 is working like a charm again! but still i have problems with the friendserver.



and don't be lazy to check out the website for yourself! :p
2013-10-26 22:37:41 UTC
more & more & more updates!
I've updated the Tournament Editor, now it is a real editor :D still needs some fixes (I blocked the most of malicious code like iframe or scripting/java &&&)

Tournament Editor:
  1. You can now use normal html code for text/fonts (eg. Bold Text, Cursive Text, Underlined Text, Font Color, font style (Not on Screen) and Headline)
  2. Add Images
  3. Add Urls
  4. Save a local copy to your hdd / open it
  5. Previewable within the client (!!!)
Also i made some more changes on the Tournament Server
  1. if you join a tournament it locks yourself, so you cant join another tournament or join the matchmaking queue (If you are on pause because you've already played your match you can queue yourself up in the matchmaking client) while the one you've joined is still active.
  2. Minute-Check if a tournament is on Start-Date
  3. Minute-Check if a tournaments registration has ended
PLUS!!! (thanks to -libili for choosing the sound :D) a new notification



some eye info





so far for now,


k1x

ps: i pushed to early, mercy me pls :<
2013-10-25 23:54:38 UTC
- You now can edit the Info's for your tournament.



- Also tournaments are now joinable.


i will edit this text with some more updates which i have made.
but for now im to lazy :D

cheers
2013-10-24 17:29:10 UTC
Update:

New design for the Matchmaking Tab:

- Integrated Map download.
- osu! one-click-starter (lolz)
- Client now gathers points from the matchlink.

Update's Matchmaking Queue:

- Fixed a bug where you challanged yourself or getting a new enemy even if you accepted the match.
- Better performance on matchmaking.
- Now uses single elo integer instead of points (e.g: 599 - 399 points = Elo 5)
- several mysql updates ;)

Update's on Profiling server:

- Friendlist is now available.
- Users can be blocked (Auto delete from friendlist)
- Userpic is now stored in mysql.

New Tournament server:

- Creating Tournaments are now available.
- Showing all active tournaments are now available.
- Editing the rules / informations of your tournament.





Tournament Preview:


More updates will follow soon.

cheers


sir k1x
fsxd_old
Client download not working for me.
Topic Starter
Sir k1x

fsxd wrote:

Client download not working for me.
well, i think the client is still not ready for an closed / open alpha test.
first i need to fix all the weird bugs that appear, if i've done so there is nothing in our way to do a open-alpha-test! :)

btw: new updates available.
NoYzE
Awesome idea! I love competitive play!
Dexus
Oh cool, I remember being an early tester with this. It was pretty cool. Good for if you're bored.
OzzyOzrock
*SWOOP*

HERE COMES A NEW CHALLENGER, YOU MUST CRUSH THEM.

scared the shit out of me

this looks pretty cool, hopefully it gets some use
Lach
source where
Topic Starter
Sir k1x
sooo guys, today is a great day for me and for the whole osu! community!

why?
because the client is finally opened for the Closed Alpha test phase!
i have limited the users to 55.
hurry and get your own beta-key!

http://osu.qme-up.tk/client.php

check the tutorial site for detailed Information's about on how to use it!

i have fixed the most bugs which i could encounter, so now its up to you to find some other bugs!
you can post them in this thread or in our forums

Also i have added some sexy icons and fixed the Live-stream Tab-page:

if you have any questions feel free to message me :)
Avail_old_1
[Seraphin]


^ ???
I get this when I try to log in
Icyteru
>press one button
>fatal error
puncia
can we even trust this?
peppy
Closed source and obfuscated? Weird direction to take when using the osu! API; I was hoping it would encourage open devlopment, which is the direction I'm taking osu! as a whole.
Topic Starter
Sir k1x
well, this took the wrong direction.
I'm confused, because everything worked as i tried to match me up with some of my mates.
anyways, iam about to restart the servers to give it a shot again.

Avail wrote:

if you get errors like these, remember to press Send Error Report! very usefully informations will be delivered to me :p

[Seraphin] wrote:



^ ???
I get this when I try to log in
Connection to Server not Possible! i seriously need to translate this to English.

[AirCoN] wrote:

>press one button
>fatal error
Screenshot? Error Report? anything? :(

Puncia wrote:

can we even trust this?
t/127557

i assure you, there is nothing you can or need to fear about, this is completely legit!

peppy wrote:

Closed source and obfuscated? Weird direction to take when using the osu! API; I was hoping it would encourage open devlopment, which is the direction I'm taking osu! as a whole.
now that you mention it, its the standard for me to obfuscate my software.
i'm gonna release skeletal version of the server & client where the functions of using the api is already integrated, so users that are interested in developing can go further with it

but anyways, thanks to the users who gave it a shot!

more infos will be posted soon!

so far,

Sir k1x

/EDIT:

Servers are online again!



/EDIT #2
This is weird, the errors occur because something is wrong with the login.ini, i've addedd it to the .zip file.
on login the client will automatically download the new .zip, just unzip it.

/EDIT #3
I have updated some code, removed some servers and added my own exception handler.
make sure you've downloeded the new version!
Topic Starter
Sir k1x
some changes below:

  1. - New Website layout (Login doesn't work yet)
  2. - Removed several servers from the client (like top / friends, they will be ported/created in php)
  3. - Added exception handler

http://osu.qme-up.tk/


cheers
Topic Starter
Sir k1x
updates below!

  1. Fixed various bug's
  2. Added a new function to load your own profilepicture (Now less network usage)
  3. Fixed the Creatematch function.

i really want to say thanks to [ Lionheart ] because he is looking for all the bugs, failures and everything else what is wrong! without him i couldn't find all these bugs!

thank you very very much!
Hexide
Looks interesting.

Few notes:

SPOILER
http://miz.hexide.com/XFsN.cs - All of this could be replaced with 5-15 lines of code if you used something like XML or JSON ( would be allot more flexible too )
http://miz.hexide.com/8FDI.cs - A bug?
http://miz.hexide.com/LyBS.png - ???? D: ... Oh ok; http://miz.hexide.com/Tf80.png
http://miz.hexide.com/ZF0W.png - This is probably one of the bigger issues, seems like you are using 3-4 different connections for seperate things. My recommendations would be try to figure out how to make one. Because currently only first login has any sort of verification; others do not.

I'm done taking it apart for now.
- Marco -


plase make the text white...

and why i can't register?

edit: i'm stupid...
Topic Starter
Sir k1x

Hexide wrote:

Looks interesting.

Few notes:

SPOILER
http://miz.hexide.com/XFsN.cs - All of this could be replaced with 5-15 lines of code if you used something like XML or JSON ( would be allot more flexible too )
http://miz.hexide.com/8FDI.cs - A bug?
http://miz.hexide.com/LyBS.png - ???? D: ... Oh ok; http://miz.hexide.com/Tf80.png
http://miz.hexide.com/ZF0W.png - This is probably one of the bigger issues, seems like you are using 3-4 different connections for seperate things. My recommendations would be try to figure out how to make one. Because currently only first login has any sort of verification; others do not.

I'm done taking it apart for now.
Pretty interesting stuff you have done over there! and pretty useful too!
good thing to have people like you :3

i am trying to figure out how to use the javascript deserialization class / xml deserialization class to make it more handy.

if you have anything more to add feel free to post them :3
Hexide

Sir k1x wrote:

i am trying to figure out how to use the javascript deserialization class / xml deserialization class to make it more handy.
You could look into JavaScriptSerializer() class.
One way of doing things: http://miz.hexide.com/NFgC.txt
peppy
Take a look into Newtonsoft.Json.Net. The MS one requires some quite specialised includes which may not be available on all systems (esp. if you are targetting an older .net version).
Hexide

peppy wrote:

Take a look into Newtonsoft.Json.Net. The MS one requires some quite specialised includes which may not be available on all systems (esp. if you are targetting an older .net version).
Project is already .NET 4.0, so it does not really matter.
Topic Starter
Sir k1x
after time has passed, it's time for some new updates!

Updates are listed below:
  1. fixed various bug's which we could encounter. (data fetch)
  2. Added some kind of installer (Still needs many many updates)
  3. New Mode: Q! me up! - Freestyle
  4. Removed "reduce unused allocated memory"-class and "automatic seal classes wherever possible"-class (To see if this is affected with the mysterious login failure)
+ i finally could manage to get the JSON string being returned by the php scripts. they will be implemented later on :)
- Marco -
Hangs on loggin' in :c
Topic Starter
Sir k1x

marcostudios wrote:

Hangs on loggin' in :c
did the client automatically downloaded the newest update?
Topic Starter
Sir k1x
IMPORTANT:

Please re-download the newest version of the client here: click

i uploaded the wrong assembly where i tried to use only one TCP-Connection.

Updates:
  1. Added a Timer for how long you are already searching for a match
  2. Estimation-timer - Displays the time where a duell could be found (Experimental)
  3. Added several folders for Applications.
  4. You are now automatically signed into the matchmaking queue (Removed one button)
  5. Profile-Settings can now be saved. (osu!ingame will be set to one change, after the change has been used you cannot change your osu!ingame anymore)
Topic Starter
Sir k1x
Small Update for you, huge update for me!:

  1. osu!data-fetch now runs on Newtonsoft.json
  2. Map-Pool is now fetched by Newtonsoft.json
  3. PM-system will be build with Newtonsoft.json
thanks to Hexide and peppy for giving me some tips on how to get used with JSON :3

:D
code for php i have created, feel free to use it
 
class data {
public $id = "";
public $name = "";
public $link = "";
}
$sql = mysql_query("SELECT id, name, link FROM table");
$rows = array();
while($row = mysql_fetch_array($sql))
{
$e = new data();
$e->id = $row['id'];
$e->name = $row['name'];
$e->link = $row['link'];

$rows[] = $e;
}
print json_encode(rows$);
Hexide

Sir k1x wrote:

code for php i have created, feel free to use it
 
class data {
public $id = "";
public $name = "";
public $link = "";
}
$sql = mysql_query("SELECT id, name, link FROM table");
$numResults = mysql_num_rows($sql);
$counter = 0;
print "[";
while($row = mysql_fetch_array($sql))
{
if (++$counter == $numResults) { //check for the last row in sql
$e = new data();
$e->id = $row['id'];
$e->name = $row['name'];
$e->link = $row['link'];
print json_encode($e);
} else {
$e = new data();
$e->id = $row['id'];
$e->name = $row['name'];
$e->link = $row['link'];
print json_encode($e);
print ",";
}
}
print "]";


Nononononono... >:(
Don't create json manualy.

Just use multidimensional arrays instead.
class data {
public $id = "";
public $name = "";
public $link = "";
}

$sql = mysql_query("SELECT id, name, link FROM table");
$numResults = mysql_num_rows($sql);
$something = array();

while($row = mysql_fetch_array($sql))
{
$e = new data();
$e->id = $row['id'];
$e->name = $row['name'];
$e->link = $row['link'];

$something[] = $e;
}

print json_encode($something);
Topic Starter
Sir k1x

Hexide wrote:

Sir k1x wrote:

code for php i have created, feel free to use it
 
class data {
public $id = "";
public $name = "";
public $link = "";
}
$sql = mysql_query("SELECT id, name, link FROM table");
$numResults = mysql_num_rows($sql);
$counter = 0;
print "[";
while($row = mysql_fetch_array($sql))
{
if (++$counter == $numResults) { //check for the last row in sql
$e = new data();
$e->id = $row['id'];
$e->name = $row['name'];
$e->link = $row['link'];
print json_encode($e);
} else {
$e = new data();
$e->id = $row['id'];
$e->name = $row['name'];
$e->link = $row['link'];
print json_encode($e);
print ",";
}
}
print "]";


Nononononono... >:(
Don't create json manualy.

Just use multidimensional arrays instead.
and that's how the magic is done :D thank you :)
comentarinformal
You should think about changing all MySQL queries to use PDO/mysqli instead of mysql_ .
The last one is deprecated and will only bring headaches (plus, either of the two I mentioned allow for queries and variables to go different ways, which makes it more secure)
Topic Starter
Sir k1x
VERY IMPORTANT:

Exception:
System.Runtime.InteropServices.COMException (0x80040154): Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
To solve this exception you have to install ShockWave Flash for Internet Explorer. Make sure you uncheck McF_sht (I dont wanna name dat program) Scan.



Thank's to There for solving it!
XPJ38
Excuse the silly question but... why is it called "Q! me up!"? :D
Genesis Rose
6:36:10 PST - Website/server offline. If you get an error this would be why.
Topic Starter
Sir k1x

XPJ38 wrote:

Excuse the silly question but... why is it called "Q! me up!"? :D
Q! is spoken "Queue", like to Queue up.

So Queue me up! - And accept the challenge is meant to stand for "to queue up and accept the next challenge".

so the best example would be the new generation of MOBA games (League of Legends, Dota, Smite etc.)
they all have a queue to search for enemies at your skill (Based on ELO, Points or Rank (in case of osu! that would be PP))

and somehow it sounds kinda cool^^
Payaya
Sooo Q! me up! can't run on Windows Vista ..? :(
caldozza
System.ArgumentOutOfRangeException: Index
and count must refer to a location within the
string.
Parameter name: count
at System.String.RemoveInternal(Int32
startIndex, Int32 count)
at System.String.Remove(Int32 startIndex, Int32
count)
at new_osu_client.Form1.AddItem(String s)
line: AddItem

I got this error report and seeings I am bad with computers I have come to ask for help if possible.
Topic Starter
Sir k1x

Caldozza wrote:

System.ArgumentOutOfRangeException: Index
and count must refer to a location within the
string.
Parameter name: count
at System.String.RemoveInternal(Int32
startIndex, Int32 count)
at System.String.Remove(Int32 startIndex, Int32
count)
at new_osu_client.Form1.AddItem(String s)
line: AddItem

I got this error report and seeings I am bad with computers I have come to ask for help if possible.
i've just checked the database and i found out that you don't even have an entry in the osu!-data-table.
but your osu! username is actaully inserted into your users-table. somehow this seems like a bug

homework for me:
add a class to the fetch.

Payaya wrote:

Sooo Q! me up! can't run on Windows Vista ..? :(
it should be, vista has .net framework 4.0 so it shouldnt be a problem.


and sorry guy's for being not so active these days, but i had some serious issues irl that needed some re-code (get it? ehehehee. wow that was bad)
updates are coming soon :3
HipzER
seems promising
show more
Please sign in to reply.

New reply