07box


Resizable RuneScape client!

07box let's you play RuneScape in a resizable window. It works by cloning the RuneScape window to a larger window that is overlaid ontop of the actual client. It hides your real cursor and displays a replacement cursor on the clone in a position relative to the actual cursor on the client. Real mouse clicks still take place in the actual client, by the user, without simulating anything, therefore it shouldn't break any RuneScape rules.


Friday, May 24, 2013

1.3.0.0

1.3 is now available. Lots of changes, probably lots of bugs.

  • Now supports Live RuneScape (EOC) and Classic
    • Why Live RuneScape? - During development I never thought there would be point to include support for the current RS, since it's resizable and all, but after a couple people suggested it I thought I might as well see how it looks. The main selling point for it is probably the Mini - it's nice to compact the whole game down to a tiny square while doing something like Fishing. 
    • Why Classic? - It's just so ridiculously tiny, it's unplayable without some sort of magnification on modern monitors.
    • I don't expect many people to use these features but it's nice that they are there.




  • Settings GUI
    • Can choose to hide RuneScape, Old School or Classic from toolbox
    • Can edit game URL-s. For example if you wish to quickly go to world 320 every time, then you can change the Old School URL to http://oldschool20.runescape.com to skip the main page.
    • Resizable. Turning this off should greatly increase performance on older PC-s. Also, this is a fallback for when you don't have Desktop Composition enabled. With additional work it would be possible to provide Windows XP support - without the resizing and mini functionality, unfortunately. Just as a convenient client. I currently don't have an XP machine to develop on nor do I know how much demand there would be for it. Let me know if you would be interested in partial Win XP support.
    • Reduce mouse speed. If you enable this function your mouse speed will be lowered based on how much you've zoomed in the game. At some point (3 for me) the mouse gets just too slow so I also added an option to enter a minimum speed to put a cap on how much the speed is reduced.
    • Light mode. In the future I will be keeping more resource-heavy operations out of "Light mode", but currently there is really no functional reason to turn it off. You may experience lag when entering the game area with your cursor if you do.
    • Show inventory in mini. Pretty self explanatory.
    • Dim covers taskbar. Whether you want the dim to cover the whole monitor or just the desktop area excluding the taskbar. You can also adjust the opacity of the dim.
    • Hide navigation bar. This hides the game bar that EOC RS has (It can't be turned off in-game if using resizable mode). I tried several implementations of it and this is the most reliable, yet not very reliable at all. You can possibly get stuck in Squeal of Fortune, Noticeboard and Settings screens in game, so using the toggle option should help you click the close button. But it sometimes stops functioning after a quick hop or such.
    • Screenshots. Can now select your own path. And toggle the sound effect.

  • Dim - you can turn on a dark background from the toolbox (Left Alt).
  • No UI mode. I don't know if this has a practical use other than that in Classic mode it removes the black borders from the window as 07box is much larger than the Classic applet (1080p RS Classic anyone?!). Maybe just turn off the UI, zoom all the way in, lean back and relax while you kill Jellys or something. Certainly an interesting way to play. Perhaps in the future I can get a small transparent inventory included in the No UI mode, so more activities would be viable, but this would be rather awkward as mouse hopping on the game screen is not allowed.

  • Mouse Hook fix for Windows 7 64bit machines - if your cursor gets stuck or disappears all together just hit and release Left Alt which should reboot the Mouse Hook to make it work again. Windows 7 has a very short timeout before low level hooks get unhooked so in previous 07box version even the slightest lag could cause your cursor to "get stuck" or "disappear".
  • Custom cursor - you can now change the cursor_rs.png file in Assets folder to any other picture to use as a custom cursor. How ever if the client is in original size the native cursor will be used instead, for best responsiveness.
  • 07box website is now the "start page". From there you can see the latest post on this blog and find out if there have been any updates. Also there should be a lovely banner blinking in your face, giving you seizures, unless you got some IE adblock magic. I'll be dumping adf.ly download links to compensate for this "inconvenience". If that's still unacceptable you are free to go over to github, grab the source code, change the start page to anything and compile at will.
  • Loading gif no longer covers the whole screen, so you can see what's going on in the background. Also if it bugs out and doesn't disappear (happens sometimes when Quick-Hopping on RS) you can just left click it to make it disappear.
Get the newest version here

Things I want to add in the future

  • Toggle mute
  • Multithreading - currently if there's lag, everything tends to break down
  • RS Map
  • Bigger window for Live RS
  • Smaller window for Classic
  • Possibly dump C# and .NET and try out some other stuff with better platform support like C++ and Qt.

Sunday, April 28, 2013

1.2.0.0

Notable new stuff in version 1.2

  • Screenshots are no longer placed in the same folder as 07box, but into users My Pictures folder instead. This is so screenshots are safe and in one place if you delete 07box, upgrade, use multiple versions or what ever.
  • Favourites - from the menu that pops up while holding Left Alt you can now choose to directly go to 2 preset worlds which can be changed in the configuration file (1 and 2, by default). 


  • No longer always on top. This took longer than I expected to implement, but was needed I believe.
  • Left click on mini now just activates 07box - brings it to the front if its below other windows, or brings it back onto screen if it's hidden. To hide 07box using Mini you now need to Right- or Middle click it.
  • Tweaked CSS so that the main page of Old School RuneScape and the world select page fit into 07box without a horizontal scroll bar.

  • Upon activating 07box the real RuneScape window needs to be brought to the top for a millisecond - that should no longer be visible to humans. I spent way too much time on this, but the overall program hopefully feels much cleaner now. This may cause lag on slower machines, how ever, so I may make it optional if there are complaints.
  • New experimental feature - Change mouse speed relative to the zoom level. If the clone is 2x the size then the cursor visually moves 2x faster. If this feels inaccurate/uncomfortable to you then you can set the "ChangeMouseSpeed" value to True in 07box.exe.config file. 
  • 1 version, Any CPU (prefer 64bit), instead of 64bit and 32bit versions
  • Loading gif when loading webpages - cause why the hell not. 
  • Hiding 07box using the popup menu should now work reliably
  • Don't have to hover 07box with the cursor in order to take a screenshot anymore, it just has to be active or you can use the popup menu button.
  • Exiting 07box should no longer sometimes cause the program to crash instead of exiting.
  • Better error messages for when your operating system doesn't support 07box or desktop composition is disabled.

Saturday, April 6, 2013

Complete rewrite: 1.1.0.0, new features and open source

As the first installment of 07box was my very first C# project without any prior knowledge of C# whatsoever I based it on a source code of an existing program. Obviously it was quite a mess, as first things always are. Now that I was a little more comfortable with C# I started 07box as a new project, from scratch.

The end result is pretty much the same, if not better. Added in are also couple of new features.

Toolbox

Now when you hold down the modifier key, which is Left Alt, toolbox shows up from where you can perform various operations.


Note: "Hide" is still a little buggy. The client unhides if you hit the modifier key. Sorry about that, will be fixed in the next release. Also you may get an error when taking a screenshot if creating a folder in the 07box.exe location requires administrative privileges. It will attempt to create a folder called "Screenshots" in the same folder as the executable - you can do this manually.

MiniScape

My second monitor recently burned out. That left me with very little room, so I created a second clone of RS, but a smaller one. This clone is non-functional - you can't click on it to interact with RuneScape, but you can use it to monitor RuneScape while the real window is hidden. You can also show/hide the real window by clicking on it. It's still quite alpha but does it's job. I plan to rewrite it soon to allow for zooming in and panning the area you wish to monitor.


Idle warning

Sometimes when fishing Sharks it can take well over 5 minutes before any game interaction is required. So I was constantly being automatically logged out. I added a progress bar to the taskbar icon to warn me before that happens.




Mouse hopping

Mouse now hops straight onto the real RuneScape client when it enters the enlarged clone (indicated with red lines). No hopping occurs on the game itself so I think everything is following RuneScape rules. Still a little bit buggy unfortunately (it sometimes hops back to the starting point) but nothing gamebreaking.


Open source

Last time I introduced 07box to reddit without the source code I received negative karma and numerous insults. Now that I've written it from scratch I'm comfortable putting the code out there as well, so here it is: https://github.com/07box/07box

I'm not very familiar with source control and am not exactly looking to use github as a part of the development now. This is mainly just so people can verify that nothing malicious is in the code. But if you wish to fork or contribute, you are free to do so.

The binaries, of course, can be decompiled as well (using a C# decompiler of your choice), or you can use the source code to compile the binaries yourself. 

Wednesday, March 6, 2013

Video

It appears to be quite laggy in the video but that is actually caused by the recording software.