Page 6 of 10

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Thu Nov 22, 2018 12:38 am
by Taipion
Update: Syncing...

A new update for ya all!

First the minor things:
- changed the description of one option in the fps-config-window to make clear that it hides (not so imporant) additional info in the fps display
- in the Log-channel, unkinned (unnamed) players should now be referenced as "Player" instead of "body" (= player model name)

Syncing the timers:
Since the first implementation by ender in his client, there was a bug or problem of sorts with using timers and multiple clients.
It would easily overwrite your changes of the other instances, like this:
- start first client and log in with char A, start second client and log in with char B
- the timers (previously) only ever loaded from the config file upon login
- do some changes to timers (start/stop/add/delete) on char A => saved as expected
- changes are now invisible to char B as they were never reloaded
- do some changes to timer on char B => overwrite everything you did on char A
I guess you get the basic idea. This way it was kinda easy to mess up your timers unintentionally and maybe even unknowingly.
Especially with the personal "for one character only"-timers, for instance to keep track of all their mason lodge timers, their madness exposure, hookah usage,.... without having to look at all timer from all chars on every single char, but only see those that belong to the char you're logged in with... well, there are many uses, and especially with the personal timers it would be very easy to overlook such a overwritten timer as you don't see it on another char.

No more!

New timer stuff:
- first off, timers are now ALWAYS checked before any timer action (start/stop/add/delete), and reloaded if and ONLY if there was a change,
this means that it is now by default impossible to overwrite and mess up your timers, no matter how many chars and client instances you use at once (on the same computer!)
- added reload button on the timers window to manually re-load without doing any changes
- added a new option under Options/Hacks/... to auto-sync timers, this basically has no performance impact (about 1/1000th below anything anyone could notice), yet, ofc, if you don't use timers on multiple client instances it's useless, so it's off by default

Did you know how many people I know?!
One addition to the kin window:
- there now is a line that sums up your kin list, there are 3 numbers:
On: chars that are online
Kin: chars that are kinned (not just memorized)
Total: sum of all chars in your kin list
- this is updated every time there is a change to your kin list (online/offline/added/removed/...), but at most once per second to keep it good on the performance side, as the server tells you the content of your kin list one by one when logging in, and it would make no sense to update it 1k times for every char in the list. ^^

ClickAllPlugin - Update:
- updated the ClickAllPlugin, link can be found in the first post under plugins, well, I'll just put the download here for your convenience. ;)
- it should be impossibe now for the plugin to stall the client to a halt, or impact it at all
- might be running faster or slower now depending on your fps, will be slower if running on a minimized client with lowered fps option
- should be more responsive now to stopping it with the hotkey when it's running already (push and hold the hotkey if you want to be really sure to stop it fast^^)

As always, use the links in the first post, or just run the updater of your choice to get the new update.

And also as always, any feedback and ideas for fixes, additions and changes are welcome, just let me know! :-)

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Tue Feb 12, 2019 1:11 am
by Taipion
Update: One handed satisfaction!

Yet another client update!

This time, the main feature is:
Inverting SHIFT!
Have you ever wondered what good it is to hold down shift 99% of the time while preparing/planting pots, fields, or simply dumping stuff into compost bins or the like?!
With this brand new feature, you do not have to do this anymore! :-)

So what is it even?!
- A new option under Options/Hacks/... named "Invert SHIFT on ItemAct", have this checkbox ON/OFF to turn the whole feature ON/OFF
- by default it's off
- when turned on for the first time, the toggle is also ON
- you can switch it ON/OFF with either tapping SHIFT 3 times fast, or using a new shortcut-key "CTRL+1"
- when it's on, it will invert SHIFT, as it tells it does, on "ItemAct" only, which means clicking an item onto any object like a pot, field, compost... you get it.

So with this, as an example, instead of holding shift for 99 pots and then holding it not for the 100th pot, you can now chose to not hold shift for 99 pots and just hold it for the 100th, though that''s not really necessary. ^^

Moar shortcut-keys!
- as you can read above, CTRL+1 toggles the invent-SHIFT-feature (as does tapping SHIFT 3 times fast), but there's more now
- CTRL+2 will turn the "Render Distance Limit" ON/OFF
- CTRL+3 will turn the "Hide Objects" feature ON/OFF (note that you still need to reload the are to have it take effect if you turn it off)
- CTRL+4 will turn the "FPS Display" ON/OFF

- fixed a bug where the "add new timer"-window-close-button would close/toggle the actual timer window instead ^^
- the lock of the minimap is now properly persisted and loaded when starting the client, so it's actually on if you chose so
- the minimap can no longer be re-sized if the lock is on
(to re-size the minimap, have the lock off and (on other clients:) click (LMB) and drag the map on its lower right corner (on my client:) the same but while holding CTRL

Tiny convenience change:
- Windows (any window, inventories and so on...) are no longer move-able while CTRL or SHIFT is held, this means no more accidentially moving windows while clicking a few selected items.
(This applies to all windows except the minimap, as on my client the CTRL for minimap is inverted, and you need to hold CTRL to move the minimap-window or resize it,
but therefore you can move your char with just clicking on the map without CTRL)

As always, get the latest version with the updater.jar of your choice (first post of this thread) or get the tsalem.jar of your choice from there (again 1st post) directly.

I am not planning on adding more shortcuts for now, but I am always open for new ideas and suggestions. ;)

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Tue Feb 12, 2019 11:28 am
by Dallane
Taipion wrote:- A new option under Options/Hacks/



Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Wed Feb 13, 2019 1:51 am
by Champie
Taipion wrote:Update: One handed satisfaction!
So with this, as an example, instead of holding shift for 99 pots and then holding it not for the 100th pot, you can now chose to not hold shift for 99 pots and just hold it for the 100th, though that''s not really necessary. ^^

So, this feature is for those who like to hold their ***** while planting pots? I bet Zodd is downloading it right now!

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Wed Feb 13, 2019 1:56 am
by Taipion
Dallane wrote:PLUGINS

Yes, thanks for reminding me, there is a plugin section in the first post of this thread, currently only housing the "ClickAllPlugin", which is unarguably one of the most simple and most useful plugins I made so far,
but I'll add some more there in the future.

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Wed Feb 13, 2019 2:22 am
by MaxPlanck
Champie wrote:
Taipion wrote:Update: One handed satisfaction!
So with this, as an example, instead of holding shift for 99 pots and then holding it not for the 100th pot, you can now chose to not hold shift for 99 pots and just hold it for the 100th, though that''s not really necessary. ^^

So, this feature is for those who like to hold their ***** while planting pots? I bet Zodd is downloading it right now!

I've already downloaded it and mixed it in with my other bots in tandem to allow me to hold my ***** with both hands. Tiny hands are a pain.

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Wed Feb 13, 2019 7:24 am
by ZoddAlmighty
Champie wrote:
Taipion wrote:Update: One handed satisfaction!
So with this, as an example, instead of holding shift for 99 pots and then holding it not for the 100th pot, you can now chose to not hold shift for 99 pots and just hold it for the 100th, though that''s not really necessary. ^^

So, this feature is for those who like to hold their ***** while planting pots? I bet Zodd is downloading it right now!

I need both hands to hold my *****.
Something a beta like yourself can only experience with other people cocks.

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Mon Feb 25, 2019 10:13 am
by grimkid
Lol thanks for patch mate!

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Wed Mar 06, 2019 8:45 am
by ecraven
I haven't been able to find a link to the sources. Where are the actual java sources to build this client?
Thanks for any help with this!

Re: Custom client by Taipion (based on Latikais/Enders)

PostPosted: Fri Mar 08, 2019 2:03 am
by tkbuffalo
I just downloaded the installer, ill run the game now with your client, i am an old user who played in 2014, havent played since 2017, so i am starting over like new....

Taipion wrote:Please Note: If you want to try this client, go read the list of features (in this first post) and the feature-spotlight-posts (links to them in this first post), or you will surely miss something ;)

Hello everyone!

Today I proudly present to you my very own custom client for Salem,
it is based on Latikais client, which is based on Enders client, so you won't miss anything from there. ;)

The list of features is quite long, but there surely is something for everyone,
more performance, more convenience, and a lot of new things to play around with. ^^
And there might also be some plugins that I'll put here.

I will go through all the new features one by one in separate posts in this thread in the next few days,
and will link to these posts from here, so you don't have to search the thread for it.

Please note:
Doing customization on the client or through plugins requires the devs approval for every single feature,
and they tend to not approve most things.
If you want to code yourself, you have to ask them or risk their wrath.

The features in one list:
- switched CTRL on minimap, CTRL-click to drag map, no-CTRL-click moves char

- modded a lot with the cams, default distance, angle, elevation, scroll speed, new cams

- added console parameters for :cam to directly input all that, too

- removed unnecessary afk check which was done ONCE PER TICK(!) ... a relic form haven, not used at all in Salem

- removed sending crash reports, I really don't like it when people take my data without even asking -.-

- activate movement mode "run" by default when logging in (like tracking is done) (UPDATE: added a checkbox for that on the last tab in options)

- fixed timers panel staying invisible / timers alerting more than once

- fixed some minor bad getInstance code (abacus, ...)

- added new timers: stopwatch timers (instead of default countdown), done by simply adding a timer with zero duration (all fields 0), added option to add a timer for the current character only, so that personal timer does not display or expire when logged in with another character, slight colour changes to distinguish stopwatch/countdown and normal/personal timers, also changed the running time of active timers to green for more visibility what is currently running and what is not

- added debug console command (RemoteUI) to display messages of actions

- the player icon visually displays above others on minimap (as usual), but is lowest for clicking things => now, your own player icon is NEVER in the way when picking up stuff via minimap

- tile centering always works (even through objects)

- added console command for making objects invisible by ctrl-clicking them, one or all of a kind

- added console command for counting things, various input options, variable range, stays on and counting while moving and until deactivated manually again, things are not counted twice (ID) as long as they stay loaded on the server

- added console command for activating a functionality to turn on/off the radius of single objects (unlike alt-r) one by one, by just ctrl-clicking them

- added MiningHelperPlugin functionality into the client, just better^^ modes can be changed via console (helps with keeping the mining-cursor active, less clicks needed for mining, more convenience)

- added :help console command to display all the new commands and parameters

- you can use gates and enter doors/buildings/stairs/mines/... with WASD movement by running into them (has option and console command to switch on/off)

- changed "sort by gobble value" to sort by colour first, then by value

- added (optional) field to the crafting window, to say how many items you want to craft

- added a list under the "options/cheats" tab to always hide certain objects, like fields or herb pots, or whatever else, with a list like the flower menu auto-chose and an additional checkbox to (de-)activate it all at once, objects are removed from sight only once when loaded, which means it should be very efficient and help performance in certain situations

- slightly improved the performance gain from "remove all animations", this option is not that powerful usually, but having a lot of animals (even dead ones) or players nearby, it might help a good bit

- added new visual display and actual numbers of remaining time for buffs, plus an optional alert (visible and optionally audible) once a configurable threshold is reached, buffs can be clicked to (de)activate an override to the alarm per buff, you can also chose to have 3 different ways now to display the remaining time on buffs, select none of them, one, two or all three however you like

- added new menu under options (last tab) to control and limit the render distance, to improve performance on weaker computers or in more demanding towns

- added an FPS display, menu options for it are also in the last options tab

- moved my options to a new tab on the right side of latikais tab (right-most tab now)

- changed "auto turn on run upon login" to work for all movement modes (ofc only one at a time^^)

- added a checkbox on the char selection screen to de-activate all performance-enhancing render-limitations for one and exactly only one login

- extended the buff alert with a new (optional) bigger display for the remaining-duration-percentage, and the new option to permanently mute buffs (right click to mute/unmute), single-session-mute is still left click as usual

- added option (in the render distance control window) to reduce the displayed ground tiles from 125 by 125 to 75 by 75, which will help performance a little bit

- reduced fps-cap of un-focused client instances from ~10 to ~5, which will greatly help if you run multiple clients [edit] will be at 10 fps, and go to 5 fps if the instance is un-focused and the char did not move for 3 seconds

- fixed a long standing "bug" in that you would open an object like a gardening pot or a field and so on while having an item in hand and shift-right-clicking the object, instead of using the item in hand on the object

- added feature to move with left-clicks and open/use objects with right-clicks even with items in hand by holding ALT

- added option to mute xmas sound in provi

- added option to show online status of chat partners

- added a search field to the kin list window, so that you can search through your kin list by name

- added a auto-unkin feature for characters marked as "red" (3rd group) in your kin list, is off by default, can only be activated with console command ":autounkinred"

- FINALLY added a huge rework of the cams, allowing to configure the default angle/elevation/distance/scroll-speed of all cams, separately and conveniently, new button "Cam Config" under Option/Camera & Graphics/... opens a new window where all these values can be configured for the currently selected cam

- fixed autobucket to also work with clay pots, copper pots and pails

- fixed cam zoom/rotation to work while holding an item in hand (cursor)

- fixed Options/Radar Config/ groups to work instantly, making things (dis)appear on the minimap the moment you (de)select a group there

- added (optional) Log chat channel for all floating numbers, like bonus rolls, combat damange and all that, plus some configuration and QoL in that regard

- added option to show chat channels in 2 columns instead of one to show more at once without having to maximize the chat window

- fixed timer synchonization between multiple clients on the same computer, auto-sync before start/stop/add/delete, manual reload button, auto-reload option

- added kin-count to the kin window, now you can officially brag about how many chars you have kinned, and see how many are online right away

Feature spotlights:

Performance and FPS

Timers with Upgrades

Mining Helper

Buff Alerts

more coming soon

First, you need to have Latikais, I do not provide a launcher yet so you need to have run Latikais launcher at least once before you can use this one,
but I guess most of you are using Latikais anyways, you can get it here: Latikais client thread

You can find your /Salem/bin/ folder which is referenced here a lot, at: /Users/[YourUserName]/Salem/bin/

First way to do it:
You can run my client like the others, just with an updater.jar hosted on github, this is one care-free way of doing it,
just download the updater.jar and run it, done: updater.jar download
Note: It will also place a tstarter.bat in your /Salem/bin/ folder, use this to start the client much faster, but without updates.

NEW: For Mac or anyone running java less than 1.7, here are some alternative updaters for lower versions:
updater for 1.5
updater for 1.6

Second way to do it:
You can download my client here: tsalem.jar download
and an (optional) start-bat-file here: start bat download

Now, if you have Latikais installed, just put both files into your /Salem/bin/ folder and run the tstarter.bat,

Third way to do it:
1. Download the .jar from above
2. Change the .jar's name to lsalem.jar (read: LSALEM not isalem^^)
3. Replace Latikais lsalem.jar in the /bin/ folder with mine
4. Set my file to be read only (rightclick -> properties -> read only)
5. Run Latikais launcher as usual
If it is not read only, Latikais launcher will simply overwrite it with his .jar, so to "uninstall" using this method, just delete it and run Latikais launcher again.

Plugins and other downloads:
To have it all in one place, I'll just put other things here, I might add more over time, but I'll post in this thread to let you know. ;)

Installation for plugins:
- have Latikais or my client
- go to your /Users/[YourUserName]/Salem/ folder and create a folder named "plugins" (/Users/[YourUserName]/Salem/plugins)
- put the plugin there
- restart the client
- look under "xtended" (hotkey "x") for the plugin

My most simple yet most useful plugin, just take one item in your hand, and activate it (hotkey: "u"),
the plugin will then drop the item from your hand to the inventory, and proceed to do one right click for every such item in your inventory.
If you have set the default flower-menu-option, this makes certain things a lot easier, like: study, split, slice,...
download ClickAllPlugin

Enders client with cravings:
I once added all the craving updates to Enders client, as some still like this one, so here you have it again.
1. download the jar
2. replace the jar in your salem folder with it (in windows under "...Users/YourUserName/Salem/bin")
3. make new file write-protected so it won't get replaced with the default jar by the launcher
salem.jar download

Possible Future Features / Fixes
- study window search option, text search for skill names in available/learned
- checkboxes to quickly make the study window bigger/smaller by hiding some things or showing more, like, both available and learned skills list at the same time (useful when using text search)
- study window search option over all skills (not only learned/available) with a helper tool to show you what you need to learn next to get to some specific skill
- (option to) show bonus rolls in system chat done :-)
- (option to) generally "click through" a special cursor, like right-click dirt into a sled/cart while having the digging cursor (thx to Chrumps for suggesting these 2)
- show unlocked skills when you learn a skill in system chat (thx to taoko)
- Fix: not showing humors still shows craving
- Feature: add rectangular display for boundry-stone-ghosts reach when building them

Thanks go to
- Kandarim, for always being helpful and answering questions, especially when I started out my incredible journey through the madness that is the clients code, and for his client and the plugins option ofc and much more
- Ender, for his client, laying the foundation for everything
- Marp, for taking the time to look at and approve all this (but definitely not for not-approving countless awesome features :P)
- ReleMai, for being my personal Mac-Guinea-Pig ^^
- Chrumps for his plugins which helped me understand the client when I just started, and some inspiring talk about the code
- Asendre, for some good talk about client code and the madness bound to it
- many more people for ideas and suggestions of all kinds

If you have questions, or run into problems launching the client, use this thread and I'll try to help.

If you find bugs, crashes or things not working as intended, or you have suggestions for new features, then also use this thread and I'll see what I can do.

Have fun with it, and tell me how you like it! ;)