Greetings osu! community!
A little about
(Feel free to skip if you don't care~)As in my other post about osu!Rank I'll just say a few words in the beginning here.
I started this project to relax a little and try something new in a programming language I haven't used that much before, Delphi.
(I usually tend to use C# or C++.)
Thanks to Primula's application osu!np, I've had a nice idea for a "new" project I can have some fun with.
As said, at first I only wanted to get a break of programming for Android, as taking breaks is essential sometimes, at least I think it is~
As I worked on it, more and more ideas kept coming and I started to write a little neat backend as well, an upload host for live status signatures, that works hand in hand with osu!Post.
After beta testing it with some friends, I thought it might could be usefull, so I created this post, this is basically it.
I plan to also accept osu!np data at some point, as I got the basic idea for everything from him. So if you want to post your status and do many other awesome things, you should totally try his application.
osu!Post basically works the same the only difference is that it's focused on sending "post requests" to php scripts.
To get back on track, I am not sure if people need this, nevertheless, feel free to test it and play with it!
We'll see what will happen.
Main features
- Live osu! status in your signature (Or any other image you like.)
- Several selectable templates
- Custom signature upload (With output customization options.)
- Authenticated registration (No one can steal your name, basically.)
- Auto updating (Checks for new osu!Post versions.)
- "Webinterface" (Nothing fancy really, I like it simple.)
- Adding customization features on demand (Want something? Go ahead and drop me a message.)
- Using MSN Live status integration.
- And more to come!
How to get it running?
- Get
osu!Postor osu!StreamCompanion
Why? - You'll need this to track your osu! status and send it to the website. - Enter your user name and press "Search" on the website
Why? - Because the website will look for an osu! user with the name entered. - Follow the instruction to change your "Location" in your osu!Controlpanel
Why? - This is done so I can be sure that you are no one else, hope it's not a bother. - After changing it and pressing "Check" you can get your key
Why? - You'll need it to send data to the website or to log in here, you can also change the key there. - Copy the key into osu!Post
Why? - Well, to get it started and that's basically it, you are good to go now. - If you play osu! in fullscreen, you will need to enable the MSN Live status integration, like this:
(osu!Post will still work without doing this in Borderless window mode!)
Why? - This is due to this change: [peppy] Don't set window title when running osu! fullscreen. - Still problems? Update .net Framework!
Why? - Microsoft says so and its always a good thing to have it up-to-date.
Screenshots
Templates to choose from!Full customization!
(Also accepting transparent images and all sizes, as long as they are PNG everything is fine!)
The little application running in the background!
Download & Links
Status: Re-DevelopmentApplication:
Website: osupost.givenameplz.de
Please keep in mind that the creators of osu! have nothing to do with this.
They can not be hold responsible for flaws or damage to the system.
Special thanks to
Primula (osu!np)Oinari-sama (Early Beta testing)
Zakkyliar (Early Beta testing & Finishing up the forum thread)
Drebonda (luser)
skyleo (Coding)
XPJ38 (osu!sig)
Piotrekol (osu!StreamCompanion)
Ishkiz (Testing)
SlasherZX ("Pro-Beta-Tester")
Documentation *on Hold*
Application (Outdated since b20140110)
Common:
Multiple instances:
You can't launch osu!Post more than once at a time, you'll get a message if you try to do so.
osu!Post will be in your tray, right clicking it will open a context menu with several options, as launching the game.
Error handling:
If osu!Post isn't able to send the data, for example on a disconnect, it will retry every 30 seconds.
Game path:
osu!Post is reading the game path out of the registry.
osu!Testbuild:
Is also supported.
Mapdata:
For now, osu!Post is using the data stored in osu!.db, as already known, this is not in peppy's favor. (Sorry about that.)
osu!Post is careful when reading from the .db file and is not setting any locks at all, so it won't fight with osu!.
osu!Post will frequently check the osu!.db file for changes and reload it only if neccesary, if it fails to read however, osu!Post will retry to do so.
If there is no file present or the data cannot be parsed, as for format changes, osu!Post will cancel the reading.
Config:
The configuration of the application is saved when gracefully closing it or every 45 minutes.
(Might be changed later on.)
Post data:
The data will be sent whenever your status changes.
There won't be any data sent if osu! is not running on startup.
The status "Offline" will only be sent when your last sent status is "Online".
osu!Post will refresh the data every 30 minutes, if there is no status change to prevent the serverside "timeout". (1 hour)
This won't happen when you are already "Offline" as in osu! is closed but osu!Post is still running.
The post request osu!Post is sending contains:
isOnline => Boolean: "true" or "false"
mapName => String: "Artist - Mapname [Diff]" or "NoMap"
mapID => Integer: ID of the map, on unknown/error: -1
mapSetID => Integer: ID of the mapset, on unknown/error: -1
Input fields:
Key:
Your generated key goes here, more about the key itself is further down in the website documentation.
The key can be "hidden" with the Hide Key checkbox mentioned further down.
The key is sent as an additional identifier.
(Can't be changed while Enable post is checked.)
User ID:
This field contains your osu! user ID.
If you want to use to osu!Post signature service, just put your ID here.
All the data sent there will be sent via "post request", the only exception is your ID, which will be sent via "get".
(Custom link will toggle between this and URL.)
(Can't be changed while Enable post is checked.)
URL:
Used if you don't want to use the osu!Post server!
This field contains the address where the data should be sent to.
All the data sent there will be sent via "post request".
(Custom link will toggle between this and User ID.)
(Can't be changed while Enable post is checked.)
Preview URL:
This input is hidden by default, it can be made visible by checking Show preview output.
You can optionally enter your custom signature link here to see if it's working correctly when sending data.
(Custom link will toggle this.)
Checkboxes:
Enable post:
This will check if osu! is running and send data everytime the status changes.
Where the data is sent, is depending on the status of Custom link, more about it below.
As of b20131213 osu!Post will not automatically send "Status offline" anymore, as the backend server now has a "timeout". (1 hour)
The "Status offline" will only be sent when you uncheck it and the status was "Online" before.
Custom link:
Used if you don't want to use the osu!Post server!
This allows you to enter your own, custom, address.
You can use this if you got a server and script on your own, for example.
(Can't be changed while Enable post is checked.)
Hide Key:
Checking this will hide your key, making it unreadable, you can check and uncheck this at any time.
This is only a visual security option.
Show preview output:
This will show a preview of your signature inside the application, if "Custom Link" is activated, you'll have enter the link manually.
The image will be updated everytime a status is sent and Show preview ouput is checked.
Show log output:
Checking this will show the log where everything that has been sent or done by the application can be seen.
(Always start osu! automatically):
Checking this will launch the game when starting osu!Post.
osu!Post basically becomes a launcher and runs in the background.
This option is recommended to be used while having Enable post checked.
It's used for easier handling without having to care about other applications than osu! itself.
Buttons:
Start osu!:
If osu! is not running, this button will start the game.
Refresh:
This button will refresh the Preview image.
Multiple instances:
You can't launch osu!Post more than once at a time, you'll get a message if you try to do so.
osu!Post will be in your tray, right clicking it will open a context menu with several options, as launching the game.
Error handling:
If osu!Post isn't able to send the data, for example on a disconnect, it will retry every 30 seconds.
Game path:
osu!Post is reading the game path out of the registry.
osu!Testbuild:
Is also supported.
Mapdata:
For now, osu!Post is using the data stored in osu!.db, as already known, this is not in peppy's favor. (Sorry about that.)
osu!Post is careful when reading from the .db file and is not setting any locks at all, so it won't fight with osu!.
osu!Post will frequently check the osu!.db file for changes and reload it only if neccesary, if it fails to read however, osu!Post will retry to do so.
If there is no file present or the data cannot be parsed, as for format changes, osu!Post will cancel the reading.
Config:
The configuration of the application is saved when gracefully closing it or every 45 minutes.
(Might be changed later on.)
Post data:
The data will be sent whenever your status changes.
There won't be any data sent if osu! is not running on startup.
The status "Offline" will only be sent when your last sent status is "Online".
osu!Post will refresh the data every 30 minutes, if there is no status change to prevent the serverside "timeout". (1 hour)
This won't happen when you are already "Offline" as in osu! is closed but osu!Post is still running.
The post request osu!Post is sending contains:
isOnline => Boolean: "true" or "false"
mapName => String: "Artist - Mapname [Diff]" or "NoMap"
mapID => Integer: ID of the map, on unknown/error: -1
mapSetID => Integer: ID of the mapset, on unknown/error: -1
Input fields:
Key:
Your generated key goes here, more about the key itself is further down in the website documentation.
The key can be "hidden" with the Hide Key checkbox mentioned further down.
The key is sent as an additional identifier.
(Can't be changed while Enable post is checked.)
User ID:
This field contains your osu! user ID.
If you want to use to osu!Post signature service, just put your ID here.
All the data sent there will be sent via "post request", the only exception is your ID, which will be sent via "get".
(Custom link will toggle between this and URL.)
(Can't be changed while Enable post is checked.)
URL:
Used if you don't want to use the osu!Post server!
This field contains the address where the data should be sent to.
All the data sent there will be sent via "post request".
(Custom link will toggle between this and User ID.)
(Can't be changed while Enable post is checked.)
Preview URL:
This input is hidden by default, it can be made visible by checking Show preview output.
You can optionally enter your custom signature link here to see if it's working correctly when sending data.
(Custom link will toggle this.)
Checkboxes:
Enable post:
This will check if osu! is running and send data everytime the status changes.
Where the data is sent, is depending on the status of Custom link, more about it below.
As of b20131213 osu!Post will not automatically send "Status offline" anymore, as the backend server now has a "timeout". (1 hour)
The "Status offline" will only be sent when you uncheck it and the status was "Online" before.
Custom link:
Used if you don't want to use the osu!Post server!
This allows you to enter your own, custom, address.
You can use this if you got a server and script on your own, for example.
(Can't be changed while Enable post is checked.)
Hide Key:
Checking this will hide your key, making it unreadable, you can check and uncheck this at any time.
This is only a visual security option.
Show preview output:
This will show a preview of your signature inside the application, if "Custom Link" is activated, you'll have enter the link manually.
The image will be updated everytime a status is sent and Show preview ouput is checked.
Show log output:
Checking this will show the log where everything that has been sent or done by the application can be seen.
(Always start osu! automatically):
Checking this will launch the game when starting osu!Post.
osu!Post basically becomes a launcher and runs in the background.
This option is recommended to be used while having Enable post checked.
It's used for easier handling without having to care about other applications than osu! itself.
Buttons:
Start osu!:
If osu! is not running, this button will start the game.
Refresh:
This button will refresh the Preview image.