Undefork - A Fork of Ender's Client

Forum for alternative clients, mods & discussions on the same.

Undefork - A Fork of Ender's Client

Postby Undefined » Mon Oct 05, 2015 3:16 pm

Hi all,

I created this fork a while back purely to add my custom interface and a couple of little tweaks for my own use but my last addition was quite significant and something I know a lot of people would probably appreciate being able to use, so I thought I'd do a quick build to release and link to my repo.
I'd like to give a big thanks to Ender for providing the base client I forked from, I was just going to send all this as a pull request initially.
While I plan to keep working on it for a while, I'm really not likely to maintain this fork for a huge amount of time, I go through cycles of being insanely busy and having nothing to do, mixed with the fact I'm often lazy and unreliable don't count of frequent updates, feature suggestions being likely to happen or any of the jazz the other client providers give you. Putting this out there is more an invitation for those more reliable lovely people providing clients to take what I've done, clean up the code and integrate it into their own client.

You can find the repo here: https://github.com/UndefinedTerry/hafen-client
Or if you just want a download you can grab the client here: http://protectorworld.com/files/hnh/Undefork.rar

If you have problems because you're running the wrong version of java, you're trying to run it on a toaster or you just don't get 'pooters then I'm not likely to be any help. If you have problems with a feature I've added then I will. If you can run Ender's client you can run this I just really couldn't be bothered to work out some sort of fancy updater like that hero has so you get a folder full of jogls!

That out of the way here's what's in the fork:

Combat system Improvements:

Image
RUN FROGGY RUN

You may now assign hotkeys to all(*) moves in the combat options menu.
During combat if a move is drawn that has a hotkey assigned you may press that hotkey instead of the assigned number, you may also still press the number. Now you can ignore the order moves are drawn in, spiffy.
If a Combat Discovery pops up you'll need to press the appropriate number unless it's for a move you've assigned a keybind in which case that'll work.
(Also note that the grid menu in the bottom right will be locked out from accepting hotkeys during combat, you can still click stuff and I doubt you want to build a oven while fighting anyway)

Cooldown timer will now display the exact amount of time until the cooldown wears off.
Queued move is now more obvious with a larger indicator

Delta display - After you attack something the first time your combat Delta will be worked out and displayed under the moves, this percentage is the reduction applied to your attack move cooldowns based on your AGI compared to your opponents.
For example, a combat delta of 35% means all your ATTACK moves are 35% quicker and it should be an easy win.
a combat delta of -35% means all your ATTACK moves are 35% slower and you can proceed to dirty your pants.

Automatically perform quick dodge / Take Aim when combat starts. Prior to the last patch this immediately played the move in order to counter insta-chop bad guys, not really as impressive now you need to wait for the 1.8s cooldown at combat start but still useful. Only these 2 moves since that's all I needed it for.

(*) Not all moves are mapped, an ulterior motive for posting this fork is to get them all mapped. When a move I haven't mapped yet pops into your belt of 5 you'll get a system message telling you which slot it's in along with the reference number I need to map it. If you'd like it added faster than waiting for me to discover it myself so that you can assign a hotkey, or just because you're nice and want to help me complete the list please let me know the move name and reference number, if it's an attack the cooldown time would be lovely too.

I've also added a couple of minor tweaks:

System time display with Dewy Mantle time alert. Will let you know when it's Dewy Mantle time, only triggers between 5am and 7am server time in case you haven't noticed, Dewy time is actually 4:45 and 7:15. The time will also show green during that time in case you miss it.
Free camera rotation, not sure why it's not in Ender's.
Instant open flower menus, it's all the rage this week.
Probably a few other things I've forgotten because I'm not organized.

The fork also includes my spiffy custom UI, I could have added an option not to use it, but I'm lazy, if you don't like it you just have to suffer, you should though, it's nice.

Planned stuff I intend to do and might if I get round to it:

Mapping all combat moves, if I get sent the refs to moves then it'll go a lot quicker. Sadly the last patch changed them all and I had to remap, I suspect future ones might do the same so unless I learn the move on a character myself (Which I'm bound to do eventually, I punch a lot of stuff) I'll need to refs again.
Tusk Romp protection (Probably Parry warning/protection too), don't you just hate it when you trigger and attack just as tusk romp goes up? - I plan to lock attacks that would trigger a retaliation unless you press them twice.
Combat front end overhaul. I don't like the current front end, I plan to do a large overhaul to change the way combat is presented client side, but it's a big job so I might not.

A note to custom client providers: Combat data (refs, cooldowns etc) is stored in Utils.java functions - It needs manually adding right now, I played with pulling cooldowns from the combat window move page resource but I probably wasn't caching them right. I don't work with Java and I'm lazy so there's probably a lot of places things can be cleaned up. (Just like the original source ba-dum-ching)
User avatar
Undefined
 
Posts: 318
Joined: Tue May 18, 2010 12:22 pm
Location: United Kingdom

Re: Undefork - A Fork of Ender's Client

Postby Undefined » Tue Oct 06, 2015 10:01 am

Looks like the move refs change after every update, I was hoping it was just because new combat moves were added with the last.
Updated move refs for today's patch, same download. Unless I find a dynamic way to pull these after an update I doubt I'll bother with updating the download each time, just the repository.
User avatar
Undefined
 
Posts: 318
Joined: Tue May 18, 2010 12:22 pm
Location: United Kingdom

Re: Undefork - A Fork of Ender's Client

Postby Undefined » Thu Oct 08, 2015 9:23 am

I've updated the download and the repo. Keybindings will no longer need manually updating after each update, when you first enter combat after a server update keymappings will be broken but will then auto-reconfigure, this will need to happen after each update. (Probably a good idea to keep a frog in a cupboard for just this purpose)
This is down to the server assigning new reference numbers to combat moves after each update, probably due to the way resources are rebuilt when new stuff is added to the cache. I'll look into a way of adding a warning that an update has happened when you log in.
User avatar
Undefined
 
Posts: 318
Joined: Tue May 18, 2010 12:22 pm
Location: United Kingdom

Re: Undefork - A Fork of Ender's Client

Postby Erock » Tue Oct 13, 2015 10:41 am

Any chance you'd ever consider forking the combat overhaul into the Amber client?

Image

This move is called "Shield Up" hope this helps seems to be the only one missing that I have.
Erock
 
Posts: 65
Joined: Wed Dec 28, 2011 10:22 pm

Re: Undefork - A Fork of Ender's Client

Postby maze » Tue Oct 13, 2015 2:27 pm

Nice work 8-)
I didn't think someone else would make it.

What I had a little trouble on was the enemy timer.

-another feature of mine was Attack indicator. Had A small window on the screen that would show the current moves my Opt used.
Also showed 4 Orbs, Green, yellow, red and blue. they would light up if the opt used that type of attack so you knew what defense to spam (but tbh It was easy to trick my bud who used this to much)

Undefined wrote:Tusk Romp protection (Probably Parry warning/protection too), don't you just hate it when you trigger and attack just as tusk romp goes up? - I plan to lock attacks that would trigger a retaliation unless you press them twice.
Combat front end overhaul. I don't like the current front end, I plan to do a large overhaul to change the way combat is presented client side, but it's a big job so I might not.


I like that "lock attack skill" while tusk romp is up.

I don't know if i missed it but say I assign 2 skills to 1 key. and both come up on my load, what does you addon do?

Undefined wrote:Will let you know when it's Dewy Mantle time, only triggers between 5am and 7am server time in case you haven't noticed, Dewy time is actually 4:45 and 7:15. The time will also show green during that time in case you miss it.
Free camera rotation, not sure why it's not in Ender's.
Instant open flower menus, it's all the rage this week.
Probably a few other things I've forgotten because I'm not organized.

The fork also includes my spiffy custom UI, I could have added an option not to use it, but I'm lazy, if you don't like it you just have to suffer, you should though, it's nice.

This is a really good add to enders it makes me wanna try your program out myself just to see the UI + dewy Mantle timer is godly (i always miss the times and to lazy to make a timer myself)

Undefined wrote:I don't work with Java and I'm lazy so there's probably a lot of places things can be cleaned up. (Just like the original source ba-dum-ching)

:lol:
WARNING! MY ENGISH SUCKS.
game ideas
User avatar
maze
 
Posts: 2525
Joined: Sat Mar 27, 2010 3:15 am
Location: Canada

Re: Undefork - A Fork of Ender's Client

Postby Undefined » Tue Oct 13, 2015 3:00 pm

Erock wrote:Any chance you'd ever consider forking the combat overhaul into the Amber client?

This move is called "Shield Up" hope this helps seems to be the only one missing that I have.


Thanks, I'll get that one added to the mappings!
It's actually a fairly laborious task to integrate into another client due to configuration differences which is why I just put the code out there rather than integrating it into a client myself, I'm sure Romovs is up to the task :)

maze wrote:-another feature of mine was Attack indicator. Had A small window on the screen that would show the current moves my Opt used.
Also showed 4 Orbs, Green, yellow, red and blue. they would light up if the opt used that type of attack so you knew what defense to spam (but tbh It was easy to trick my bud who used this to much)

I actually considered adding something like this too, but then put it on my list of things to include in a full front-end overhaul.

Other stuff I want to see is removing the 5 card display entirely since it no longer makes sense with hotkeys and replacing it with a copy of every card in your current deck which flip between 20 and 100% alpha depending on if it's drawn. These would also have a percentage indicator under them that gives you the chance of that move being drawn next based on previous draws.
I also loftily plan a cards last played display which will show your history of moves performed, which will also eventually tie into a system that remembers these sequences and lets you save and just replay them in future fights. Sort of a self-scripting dumbfire automation rather than botting. My goal is to improve player quality of life rather than create some sort of combat bot, performing the same sequence over and over when fighting trivial enemies like ants and bats gets tiresome but would get you killed in a real fight, especially as you'd need a 5 card deck to use it and a combat discovery would fudge it.
I understand why random draw is a good thing I just don't understand why hotkeying wasn't a native feature.

But, right now in one of those far too much to do cycles so these are just plans for the future. :)

I don't know if i missed it but say I assign 2 skills to 1 key. and both come up on my load, what does you addon do?

I didn't bother with a fail safe, if the same key was assigned to 2 moves it'd work for both, if both were drawn at the same time based on the way it's coded I'd assume the first one in the sequence would be played. (It'd try and play both but it's try that one fractionally quicker)
User avatar
Undefined
 
Posts: 318
Joined: Tue May 18, 2010 12:22 pm
Location: United Kingdom

Re: Undefork - A Fork of Ender's Client

Postby maze » Tue Oct 13, 2015 4:05 pm

Undefined wrote:(*) Not all moves are mapped, an ulterior motive for posting this fork is to get them all mapped. When a move I haven't mapped yet pops into your belt of 5 you'll get a system message telling you which slot it's in along with the reference number I need to map it. If you'd like it added faster than waiting for me to discover it myself so that you can assign a hotkey, or just because you're nice and want to help me complete the list please let me know the move name and reference number, if it's an attack the cooldown time would be lovely too.


Image
Image
Image

so far that is all i got.
WARNING! MY ENGISH SUCKS.
game ideas
User avatar
maze
 
Posts: 2525
Joined: Sat Mar 27, 2010 3:15 am
Location: Canada

Re: Undefork - A Fork of Ender's Client

Postby Undefined » Thu Oct 15, 2015 11:30 pm

I was inspired, updated on Repo, will sort a release tomorrow, it's late.

Hotkeys are now configured automatically every time you log in so you no longer have to worry about them breaking at some point because of an update. I really should have seen this approach a lot earlier but I had blinders on focusing on a different direction.
(No longer sets an offset, just pulls the ID for Punch when the UI loads and configures all other moves based on that, several moves still need their ID compared to Punch mapped but that should be self evident how to do for anyone looking at the appropriate functions)
User avatar
Undefined
 
Posts: 318
Joined: Tue May 18, 2010 12:22 pm
Location: United Kingdom

Re: Undefork - A Fork of Ender's Client

Postby Undefined » Fri Oct 16, 2015 8:07 pm

Build updated, same download link, I haven't merged Enders' latest changes though, will take some time to sort that out this weekend, my own code diverges in several areas that were updated so need to manually merge conflicts.
I have however also included Tusk Romp protection as a combat option, with this activated you will no longer be able to accidentally trigger an attack when fighting a boar who has Tusk Romp active. In order to attack through Tusk Romp you'll need to press the same attack twice.
User avatar
Undefined
 
Posts: 318
Joined: Tue May 18, 2010 12:22 pm
Location: United Kingdom


Return to The Wizards' Tower

Who is online

Users browsing this forum: No registered users and 10 guests