Author Topic: QuickRent v1.2 - [nearly] All the match servers in one app!  (Read 4026 times)

mRokita

  • Autococker
  • Posts: 598
QuickRent v1.2 - [nearly] All the match servers in one app!
« on: November 02, 2014, 02:51:32 PM »
QuickRent v1.2 - Beta
Old version:

This app just makes you able to rent any of the DP match servers.
I’ve just released QuickRent v1.2.
It supports Arctic Match now, and it wont stop supporting it.
Windows download: https://github.com/hTmlDP/QuickRent/releases/download/v1.2/QuickRent_v1.2.exe
Feature list: https://github.com/hTmlDP/QuickRent/releases/tag/v1.2
Source code: https://github.com/hTmlDP/QuickRent/blob/master/QuickRent_v1.2.pyw

Thanks to [OTB] for hosting a mirror
---
Check www.htmldp.com for recent news.
Written in Python with the wx library.
Greetings,
hTml
« Last Edit: December 17, 2014, 02:02:14 PM by hTml »

Neoterra

  • VM-68
  • Posts: 107
Re: QuickRent - All the match servers in one app!
« Reply #1 on: November 02, 2014, 05:06:37 PM »
good job

xrichardx

  • 68 Carbine
  • Posts: 295
Re: QuickRent - All the match servers in one app!
« Reply #2 on: November 02, 2014, 06:14:21 PM »
I like the fact that you help people. You asked for feedback, so here is my opinion about this.

If you want to read the source code, just send me a private message, i don't want to make it public - somebody would use it for spamming the servers.
This doesn't make sense. Writing a simple program that spams servers is not hard. There are even binaries available on the internet. Also, everyone with a bad intent could easily "decompile" (aka extract) your exectable (aka zip file).
Python was not made to make obscure binaries and distribute them, it was made to write scripts and distribute these scripts so everyone with the interpreter could run them. Platform independently. You destroy this platform independence, so why even bother using python and forcing it when you destroy it right afterwards? The language is designed to be open source. I think programmers should accept this and use it the way its meant to be used or dont use it at all.
I have to say that I was scared when I opened the executable and found that py2exe included parts of the email library. But luckily, when going through your source, I found that you are not using it.

Alright, you want feature requests so here you go:
This app just makes you able to rent any of the DP match servers.
No, it does not. It can rent you some hardcoded servers. If you really want to praise it this way, you got to get the serverlist, get the hostname of every server, check whether its a match server and find the webaddress where you can rent it and then send your request. Imagine someone finding your tool in 5 years and being unable to use it because the smallest thing has changed. He cant modify the source to work again because you did not provide it and then he has to do all the work you did again.
Also, you should not hardcode the answer to the botcheck as people tend to use botchecks to prevent bots from using their service and might change these. It shouldn't be hard to extract from the webpage.

Written in Python with the wx library.
Together with py2exe, this causes the resulting binary (~9.2MB) to be huge in comparison to other utilities of the game. The serverbrowser is about 100KB (~1/32 = 3,125% of the size). If you just distributed the .py file, there would be no problem, in the end it is about 24KB. But of course everyone would have to install python. The big file (and wxWidgets itself) adds another problem - the startup time. Starting your program on my SSD takes around 3 seconds. Even visual studio starts up faster on my machine.

The GUI looks a bit ... unusual. I know you can't do much about that, but you could try to use the default widths, heights and paddings for your elements, there is a msdn site explaining what each value should be in what situation but I can't find it right now. The buttons at the bottom are a bit too big while the upper button is a bit too small. You should at least make them the same size.

Generally, I doubt anyone will really gain an advantage from using this as opening the webbrowser and clicking a shortcut is faster than waiting for your program to start for me. What I think would be really cool is the ability to rent a server ingame. Imagine you have a menu with a list of all servers and you enter all the data you enter into your tool right now and then the menu opens a webpage giving all the information as a POST request like "htmldp.com/rent?pw=asd&login=asd&gravity=900". The website then changes the servers settings and redirects to the change-cvars site. In a real-life scenario, this has the advantage that tabbing out the game and starting an executable is not necessary so renting a server for a match you just found your enemies for will be faster and easier.
« Last Edit: February 29, 2024, 03:39:52 AM by xrichardx »

Cameron

  • Global Moderator
  • Autococker
  • Posts: 2686
Re: QuickRent - All the match servers in one app!
« Reply #3 on: November 02, 2014, 07:48:31 PM »
Don't you need rcon access to do this anyway?

mRokita

  • Autococker
  • Posts: 598
Re: QuickRent - All the match servers in one app!
« Reply #4 on: November 03, 2014, 12:16:45 AM »
Xrichardx, i know how py2exe works, and i also know that its not hard to decompile an executable created with py2exe.
If you've cant understand the reason of it, just dont post anything.
[small tip: a guy like dooci wont decompile it]


Ace

  • Autococker
  • Posts: 661
Re: QuickRent - All the match servers in one app!
« Reply #5 on: November 03, 2014, 12:30:04 AM »
-
« Last Edit: December 16, 2014, 06:52:22 PM by Ace »

xrichardx

  • 68 Carbine
  • Posts: 295
Re: QuickRent - All the match servers in one app!
« Reply #6 on: November 03, 2014, 11:37:58 AM »
Don't you need rcon access to do this anyway?
Well, to actually do what the webinterface does, you would need to. But this just has hardcoded links to the webpages where you can rent the servers. As I said, even the botcheck solutions are hardcoded.

Xrichardx, i know how py2exe works, and i also know that its not hard to decompile an executable created with py2exe.
Well then, why do you use it? Clearly, there are many disadvantages and no real advantages

If you've cant understand the reason of it, just dont post anything.
I wrote much more than just that. As I said, make an ingame menu that allows people to rent servers ingame and they will be happy.

[small tip: a guy like dooci wont decompile it]
Small tip: A guy like dooci wont rewrite it to spam servers through many different proxies when he can't even decompile it.

To me, the program has these main problems:
- the file is huge, the startup is slow
- you need to maintain it as long as you want it to work (as every critical information is hardcoded)
- the gui does not excactly look good (non-standard design which is uncommon)
- you force some option upon the user (guntemp doesnt just have a "on" and "off" state)
- this still is an external application where I could just use my browser and rent a server from my favourite clan.

Minor problems / bugs:
- the user has to copy the password and paste it on the cvar tab. A newly rented server should be automatically added so the user doesnt need to do this.
- for me, starting the program, switching to the cvar tab and opening the drop down menu gives this string for the otb servers: [OTB] Match 1 (Host, Germany). Shouldn't "host" be "cologne" here?
« Last Edit: February 29, 2024, 03:41:23 AM by xrichardx »

mRokita

  • Autococker
  • Posts: 598
Re: QuickRent - All the match servers in one app!
« Reply #7 on: November 03, 2014, 12:07:30 PM »
@xrichardx
Quote
- the file is huge
py2exe
Quote
- the startup is slow
I guess that you didn't read some part of the code - its 'pinging' the servers before displaying the window.
Quote
- you need to maintain it as long as you want it to work (as every critical information is hardcoded)
it is just a fast beta release, i had no time to finish it yesterday, and i decided to release. v1.1 will use some mirrors for getting the necessary server info.
It will make a config file that will be editable
Quote
- you force some option upon the user (guntemp doesnt just have a "on" and "off" state)
It will be added to the settings.
Quote
- this still is an external application where I could just use my browser and rent a server from my favourite clan.
Personally. i hate to run a browser just to rent a server.

Cameron

  • Global Moderator
  • Autococker
  • Posts: 2686
Re: QuickRent - All the match servers in one app!
« Reply #8 on: November 03, 2014, 09:29:18 PM »
Well, to actually do what the webinterface does, you would need to. But this just has hardcoded links to the webpages where you can rent the servers. As I said, even the botcheck solutions are hardcoded.
Oh, when you said predefined passwords I thought you were referring to them.

hTml:
Now that I understand that is what it does, this doesn't seem like the best solution.  Like xricharx said, hardcoding just isn't the way to go, as things change, so this will last what, a month with the rate that new servers pop up?  If you leave the community, it becomes a redundant bit of software.  I understand it might be a good learning curve for programming, but that's why we are here giving feedback, isn't it? 

I don't know much about programming, so I don't know what is possible or what isn't (both design and security wise), but the way I would make it would be to use rcon, but seeing as server admins won't give their rcon passwords out just like that, have a sort of central database that they can update their passwords on securely (lets just say something like dplogin), which a server renting application could see servers like the server browser, and check the password database (given some security measure to prevent other access) for an rcon password and a description that matches the match server.  Then you can actually make a decent gui and you aren't relying on the limited settings that can be changed by the websites and / or IRC renting bots. 

For that to kick off though (and the one that you have made so far), it would have to be getting used frequently by many people to actually warrant the server admins to put their rcon password/s up somewhere, and then updating them (if they ever actually change them), or in the case of what you have made so far, actually alert you to any changes so you can update and release a new version of your software, to not annoy people who already have it.

Please actually take this as constructive criticism and don't just shut people down like you did to xrichardx above.  There are some topics where people may do it to you or vice-versa, but seeing as you are genuinely trying to do something useful, I'm putting in my feedback and suggestions to make it better, for if you intend on continuing to develop it.

mRokita

  • Autococker
  • Posts: 598
Re: QuickRent - All the match servers in one app!
« Reply #9 on: November 13, 2014, 09:31:34 AM »
http://www.htmldp.com/quickrent-v1-1-incoming/
I will post some information about the current progress of this project on my blog at www.htmldp.com.

mRokita

  • Autococker
  • Posts: 598
Re: QuickRent v1.1 - [nearly] All the match servers in one app!
« Reply #10 on: December 16, 2014, 09:49:22 AM »
http://www.htmldp.com/quickrent-v1-1-released/
v1.1 released, server info is no longer hardcoded and the source code is public.
If you would like to host a mirror for the server information (something like http://htmldp.com/qr), PM me, contact me on IRC or whatever you like.

mRokita

  • Autococker
  • Posts: 598
Re: QuickRent v1.2 - [nearly] All the match servers in one app!
« Reply #11 on: December 17, 2014, 02:00:12 PM »
I’ve just released QuickRent v1.2.
It supports Arctic Match now, and it wont stop supporting it.
Windows download: https://github.com/hTmlDP/QuickRent/releases/download/v1.2/QuickRent_v1.2.exe
Feature list: https://github.com/hTmlDP/QuickRent/releases/tag/v1.2
Source code: https://github.com/hTmlDP/QuickRent/blob/master/QuickRent_v1.2.pyw

Thanks to [OTB] for hosting a mirror
---
Check www.htmldp.com for recent news.