Policy Change: Open Source Code

Announcements about major changes in Haven & Hearth.

Re: Policy Change: Open Source Code

Postby skrylar » Thu Jul 30, 2009 8:55 pm

ape wrote:The game client is written in java and as such you can easily decompile the entire thing and recompile any changes you want, even without the original source code. The only way to stop that is obfuscation, which only slows hackers down; you can't fully prevent it.


That doesn't even stop seasoned hackers, since you STILL have more information available to you than the average C/C++ program dumped out in assembly that seasoned hackers are most likely proficient in cracking already.

loftar wrote:It strikes me, now that you mention it, that you'll be having trouble making a feature-complete client on the CLR, at least without running Java bytecode. Some resources contain some integrated Java code that is loaded on demand -- in particular, such things as some special sprites and some of the rarer UI elements.


Storing java code in a resource file is a very strange move, and I was aware that you had a code storage resource but wasn't sure that you ever actually used it. I would recommend avoiding storing code in resources/sending it from the server since it can cause a very interesting security situation but for smaller stuff a few hours with Reflection.Emit or Cecil and the JVM manual can probably give us the ability to compile simple java code in to CIL.
The most dapper fish you've ever seen.
And so he did say he was riding a dolphin, and that He was splashing water upon thee. --Chapter 1, Verse 2; Codex of Boats
User avatar
skrylar
 
Posts: 33
Joined: Wed Jul 15, 2009 10:56 am

Re: Policy Change: Open Source Code

Postby loftar » Thu Jul 30, 2009 9:02 pm

skrylar wrote:That doesn't even stop seasoned hackers, since you STILL have more information available to you than the average C/C++ program dumped out in assembly that seasoned hackers are most likely proficient in cracking already.

Haha! :) I cannot but agree. Sometimes, I cannot help but almost wonder why Sun even bothered to create the actual Java language, seeing how it adds only oh so little on top of the actual bytecode. It is very often that I run into some weirdness in the Java class libraries, and swear a little at not finding the source code for the com.sun.* class that's making my life sour for the moment, before reminding myself that all I have to do is "javap -c -private com.sun.LittleSucker", seeing how its output is only slightly less readable than the original source code.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8981
Joined: Fri Apr 03, 2009 7:05 am

Re: Policy Change: Open Source Code

Postby sabinati » Thu Jul 30, 2009 9:12 pm

Peter wrote: At the very least, the dark/light mask will be removed pretty much immediately. I'm sure someone's done that already.


you can just change your gamma settings. :o omg haxx.
User avatar
sabinati
 
Posts: 15502
Joined: Mon Jul 13, 2009 4:25 am
Location: View active topics

Re: Policy Change: Open Source Code

Postby kobnach » Thu Jul 30, 2009 10:16 pm

loftar wrote:
Peter wrote:That's really terrifying. As soon as the client goes open-source, all the hackers and crackers will jump-in doubletime. I suspect that within a month, we'll get a command line program you can run that'll macro your character to 10000 levels in each skill and all non-leveled skills overnight.

I don't think you have to worry too much about that, though. I'm pretty sure that almost anything which could have been done with the client source code could have already been made with macros. If that isn't the case, well, then I'll just have something to remedy. :)


Overnight would take some doing, assuming the delays for various tasks are implemented server-side not client-side, and the client-server protocol isn't broken enough that one character can do multiple things at the same time.

However, I admit I'm looking forward to writing a "bot", if I can. I was already trying that with the client closed source ... now I don't have to decode the communication protocol, or deal with oddities that turn out to be the server sending java to the client to execute ;0)

And getting rid of darkness will be lovely - and suddenly so much easier ;-)

Yes, I'm a geek. And the way the game is going, playing with the code looks like being more fun for me than actually playing the game... and much more challenging, given that I'm not into PvP.

[Edit: I just read the doc. file. The normal policy for H&H is that anything players can do, they may do, though they should inform the developers about bug(s) and unbalanced features they are exploiting. However, I see the following:

Most importantly, there are a few ways in which the client can be modified so as to constitute what we would consider cheating (rather minor cheating, but cheating nonetheless). As a matter of policy, we do not allow such clients to connect to our server, or use our resources.


I'd like an advance ruling on whether or not a client that does things for the player ... whether as simple as harvesting everything in a certain area, or as complex as running a completely AI character ... counts as "what we would consider cheating".

I hope the answer will be "no," because attempting to write a bot sounds like a lot of fun, and playing seems likely to remain tedious and frustrating until the map reset.]
Last edited by kobnach on Thu Jul 30, 2009 11:32 pm, edited 1 time in total.
kobnach
 
Posts: 671
Joined: Wed Jun 10, 2009 5:04 am

Re: Policy Change: Open Source Code

Postby theTrav » Thu Jul 30, 2009 10:55 pm

JUBILATION!

quick question, I don't want to get into the debate about why you hate it so, but what variable name formatting do you use instead of lowerCamelCase. Is UpperCamelCase still acceptible for class names?

Also is it acceptable if, in my patches I replace all tabs with an appropriate number of spaces? (Eclipse auto format is going to be the easiest way for me to read the format and stay within your other constraints such as trailing {
User avatar
theTrav
 
Posts: 3464
Joined: Fri May 29, 2009 11:25 pm

Re: Policy Change: Open Source Code

Postby loftar » Fri Jul 31, 2009 2:19 am

kobnach wrote:I'd like an advance ruling on whether or not a client that does things for the player ... whether as simple as harvesting everything in a certain area, or as complex as running a completely AI character ... counts as "what we would consider cheating".

I hope the answer will be "no," because attempting to write a bot sounds like a lot of fun, and playing seems likely to remain tedious and frustrating until the map reset.]

Generally speaking, I'd like to modify the game mechanic so as to make pure "macroing" more or less impossible (for example, macroing stuff that requires stamina would require eating food every so often, which in turn requires gathering food, and so on, until you need an entire AI to do it), so in general, then, anything you manage to automate could, at least more or less, be considered a UI improvement. Getting the game mechanics to that point might require quite some time, though, so we might have to take some kind of explicit action against the worst and most blatant forms of it. If you manage to write an AI to play the game for you, I'd probably think you've deserved it. :)

Obvious examples of cheating would include removing the light mask or reversing the Z-order to see all hidden items and what not. But yeah, at some point or another we may have to take action against blatant macroing. It is unclear.

theTrav wrote:quick question, I don't want to get into the debate about why you hate it so, but what variable name formatting do you use instead of lowerCamelCase. Is UpperCamelCase still acceptible for class names?

Also is it acceptable if, in my patches I replace all tabs with an appropriate number of spaces? (Eclipse auto format is going to be the easiest way for me to read the format and stay within your other constraints such as trailing {

Well, I don't particularly like it, but CamelCase is so commonly used by many Java-related tools (including even EMACS) as the main way to recognize class names, so I've found no other real option than to use it. (By the way, I differ between them simply as camelCase and CamelCase)

As for spaces; certainly, you don't need to be using tabs. I don't mind you only using spaces. The note about tabs only goes if you actually use tabs. Maybe I should clarify that.
"Object-oriented design is the roman numerals of computing." -- Rob Pike
User avatar
loftar
 
Posts: 8981
Joined: Fri Apr 03, 2009 7:05 am

Re: Policy Change: Open Source Code

Postby StarChaser » Sat Aug 01, 2009 6:48 am

Will a server set/source be released eventually? Just curious because a private server would be something rather cool to have.
User avatar
StarChaser
 
Posts: 267
Joined: Sat May 30, 2009 10:16 am
Location: Australia

Re: Policy Change: Open Source Code

Postby Delamore » Sat Aug 01, 2009 6:53 am

StarChaser wrote:Will a server set/source be released eventually? Just curious because a private server would be something rather cool to have.

There is no reason to ever release the server code.
Why? Because if they ever plan to charge for H&H then they just threw that out the window.
And the fact that it is their game and they most likely don't want people out there running their own server because they get pissed at how Jorb and Loftar run the game.
User avatar
Delamore
 
Posts: 1220
Joined: Mon Jul 13, 2009 9:11 am

Re: Policy Change: Open Source Code

Postby EveryTimeV » Sat Aug 01, 2009 6:57 am

StarChaser wrote:Will a server set/source be released eventually? Just curious because a private server would be something rather cool to have.


You could fashion your own server source, from what I gather it's a lot easier to create a server than it is to create a game. Just keep it to yourself though, for obvious reasons.
I will steal all of the RuneStones in the land, if your stone has gone missing in the night then I'm already hauling it.
User avatar
EveryTimeV
 
Posts: 82
Joined: Thu Jul 30, 2009 5:41 am

Re: Policy Change: Open Source Code

Postby kimya » Sat Aug 01, 2009 7:17 am

the server is the game, and vice versa
kimya
 
Posts: 845
Joined: Mon Jun 01, 2009 1:35 am

PreviousNext

Return to Announcements

Who is online

Users browsing this forum: No registered users and 13 guests