The next update will be available on Wednesday, December 18, in the early evening (GMT+1).
This update will not yet replace the Java version, instead it is the actual content update. We'll provide more information about the transition together with the update.
-
Hallo zusammen!
Soeben habe ich ein Kompatibilitäts-Update V0.81.1 bereitgestellt. Dies sollte weitestgehend das Problem mit den Namen beheben!
Hello everybody!
I have just released a compatibility update V0.81.1. This should largely fix the problem with the name tags!
P.S.:
Aus gesundheitlichen Gründen (Augen) war ich wenig aktiv gewesen.
Kann noch einige Wochen dauern, bin aber wieder auf dem Weg der Besserung!
For health reasons (eyes) I had been little active.
Can take a few more weeks, but I'm on the way to recovery!
-
Hi!
I just updated the plugin. Only minor changes to admin commands.
New Version: V0.81:
- new command (admin only): /abm gotoanimal ID teleports you to animal with ID
- new command (admin only): /abm goback brings you back to the last position
(after one or more calls to gotoanimal) - command modified: /abm listranchers NAME(optional) if NAME is specified, then list only those
whose name begins with NAME
Habe das Plugin soeben aktualisiert. Es sind nur kleine Änderungen bei Admin-Kommandos.
Neue Version: V0.81:
- neues Kommando (nur Admin): /abm gotoanimal ID teleportiert dich zum Tier mit ID
- neues Kommando (nur Admin): /abm goback bringt dich zur letzten Position zurück
(nach ein- oder mehrmaligem Aufruf von gotoanimal) - Kommando modifiziert: /abm listranchers NAME(optional) wenn NAME angegeben, dann nur die auflisten,
deren Name mit NAME beginnt
@Jon_miner:
After releasing an animal to the wild the name should be reset after a maximum delay of 10 seconds (since V0.80).
IWhy this delay? It refers to database write updates every 10 seconds.
-
Hi!
@Jon_miner:
I did not expect so much players, but the case with zero animals still listed is not intended.
Searching for/ listing players by starting letters is reasonable, I will add this!
@sharkbitefischer:
I will think about a command for regular players.
Taming and breeding mounts: it is not really possible (at least before 0.9.4) to interact with NPCs of type MOUNT programatically. I could check if this is still the case with the new version.
-
Hallo zusammen!
Nach einer kleinen Weile bin ich wieder zurück!
Aber das ist noch nicht alles: ich habe etwas mitgebracht!
Neue Version: V0.80:
- neue Interaktion: gib dein Tier wieder frei (es ist wieder wild), halte dazu ein Stock in den Händen
- Kommando entfernt: /abm clearnames (war nur übergangsweise gedacht)
- neues Kommando (nur Admin): /abm listranchers alle Rancher (Spieler mit Tieren) auflisten
- neues Kommando (nur Admin): /abm listanimals PLAYER_ID alle Tiere vom Spieler PLAYER_ID auflisten
- neues Kommando (nur Admin): /abm changeowner rancher OLD_ID NEW_ID alle Tiere vom Spieler OLD_ID auf NEW_ID übertragen
(setze NEW_ID = -1 um alle Tiere an die Wildnis zurückzugeben) - neues Kommando (nur Admin): /abm changeowner animal NPC_ID PLAYER_ID Tier NPC_ID auf Spieler PLAYER_ID übertragen
(setze PLAYER_ID = -1 um das Tier an die Wildnis zurückzugeben) - neues Kommando (nur Admin): /abm reset lock rancher ID alle angeleinten Tiere des Spielers mit ID losbinden
- neues Kommando (nur Admin): /abm reset lock animal ID angeleintes Tier mit ID losbinden
- neues Kommando (nur Admin): /abm reset invincible rancher ID alle Tiere des Spielers mit ID wieder verwundbar machen
- neues Kommando (nur Admin): /abm reset invincible animal ID Tier mit ID wieder verwundbar machen
- Schafe sind wieder fütterbar, sie werden nur geschoren, wenn du kein Futter in den Händen hältst
- viele Code-Änderungen unter der Haube (u.a. für kommende ABM-API)
...zusätzlich werde ich demnächst noch eine kleine ABM-API veröffentlichen ( @noci wird's freuen )
Viel Spaß!
Hello everybody!
After a little while I'm back!
But that's not all: I brought something with me!
New Version: V0.80:
- new interaction: release your animal (back to the wild), hold a stick in your hands
- removed command: /abm clearnames (only temporarily used)
- new command (admin only): /abm listranchers lists all ranchers (players owning animals)
- new command (admin only): /abm listanimals PLAYER_ID lists all animals from player PLAYER_ID
- new command (admin only): /abm changeowner rancher OLD_ID NEW_ID transfer all animals of player OLD_ID to NEW_ID
(set NEW_ID = -1 to release all animals to the wild) - new command (admin only): /abm changeowner animal NPC_ID PLAYER_ID transfer animal NPC_ID to player PLAYER_ID
(set PLAYER_ID = -1 to release the animal to the wild) - new command (admin only): /abm reset lock rancher ID unleash all animals of player with ID
- new command (admin only): /abm reset lock animal ID unleash animal with ID
- new command (admin only): /abm reset invincible rancher ID make all animals of player with ID vulnerable again
- new command (admin only): /abm reset invincible animal ID make animal with ID vulnerable again
- sheeps are feedable again, you can shear it only if no food is held in the hands
- many code changes under the hood (for upcoming ABM-API)
...in addition I will soon publish a small ABM API
Have fun!
-
...grabbed!
-
@Lady_whynot
Die Möglichkeit, Tiere wieder frei lassen zu können, ist bereits in Planung. Ich kann noch nicht genau sagen, wann es fertig ist, aber es kommt!
-
however, unfortunately the pause() method doesn't work atm due to a bug, this will be fixed in the next update
...funzt! (...works!)
-
Hmmm...
Perhaps an event-driven solution, perhaps the UpdateEvent?
Something like this:
public void onUpdate(UpdateEvent evt)
lastTime += evt.getTpf();
Display More
-
Hi!
I hope I understand your intention right.
For my understanding a timer in Java is always "fire and forget". For me it doesn't matter if the Timer in RW-API has a pause()-function.
You have to manage a pause mechanic on yourself.
Because coding is fun, I just made a timer test.
The source code is not rich in helpful comments , but I think you get the idea with the pause flag.
Use /timer start , /timer pause , /timer unpause
import net.risingworld.api.Plugin;
import net.risingworld.api.Timer;
import net.risingworld.api.events.EventMethod;
import net.risingworld.api.events.Listener;
import net.risingworld.api.events.Threading;
import net.risingworld.api.events.player.PlayerCommandEvent;
import net.risingworld.api.objects.Player;
import java.util.StringTokenizer;
public class TimerTest extends Plugin implements Listener
private final Runnable timerTask_FP;
private Player testPlayer;
timerTask_FP = this::timerTask;
registerEventListener(this);
timer = new Timer(2.0f, 0, -1, timerTask_FP);
private void setPause(final boolean p_pause)
testPlayer.sendTextMessage("timerTask executed");
@EventMethod(Threading.Async)
public void onPlayerCommand(PlayerCommandEvent evt)
testPlayer = evt.getPlayer();
StringTokenizer st = new StringTokenizer(evt.getCommand(), " /");
String cmd = st.nextToken();
testPlayer.sendTextMessage("timer start");
testPlayer.sendTextMessage("timer stop");
testPlayer.sendTextMessage("timer pause");
testPlayer.sendTextMessage("timer unpause");
Display More
I hope this is in someway helpful?
-
@Deirdre
Dauerhaft geht's leider nicht.
Aber: Wenn diese NPC-Dummies noch den Namen in grüner bzw. gelber Schrift über den Köpfen haben, dann noch aus der Zeit, wo man diese "zähmen" konnte. Dies ist ja mittlerweile nicht mehr zulässig (seit Version 0.60).
Die einzige Möglichkeit ist, diese NPC-Dummies zu "löschen" (mit der Armbrust z.B. ) und durch neue zu ersetzen (und vorher noch auf die neuste Plugin-Version zu aktualisieren - falls noch nicht geschehen).
Eine andere Frage: rennen bei dir noch Tiere mit weißer Schrift über den Köpfen rum? Oder ist das kein Problem mehr?
(Es gab mal eine Version, wo plötzlich alle den Namen in weiß hatten. Danach hatte ich dann ein Workaround eingebaut mit /abm clearnames)
-
Oh yes, you are right: using /abm clearnames unlocks all animals!
This command was supposed to be used once as a fix and will be removed in the next update. Please do not use it anymore.
I hope this issue has not upset all people too much. (sh*t happens or: something is always )
They can use /abm warphome to recall them, but unfortunately they have to leash them again.
P.S.: Thank you again for your feedback! Very valuable - to track down the remaining issues!
-
Hi everybody!
A new version is out:
New Version V1.3
- after server restart the timemode is now set properly (without admin logged in)
- new command /tscsettime hh mm
@sharkbitefischer: Can you please test the new version and give feedback if the time mode now is set properly after restart?
-
Mmmh, lecker Salami 1a!
Von welchem Viehzuchtmeister der Laden wohl beliefert wird?
-
...now we are talking!
-
You are not wrong! It is normalized, f.e. when using java.io new File("a/b/c").
But on the other hand there are cases where you pass a path with no normalization (native libraries?) when the target system is unknown.
I simply do not want to care about this.
-
I can not resist adding my mustard!
1. Do not use hardcoded path name separators! Not "/" and not "\\"!
Please make use of the getSeparator()-function:
String SEP = FileSystems.getDefault().getSeparator();
String filePath = plugin.getPath() + SEP + "data" + SEP + "mydatabasefile.db";
2. Avoiding SQL injection attacks: always use prepared statements and then everything is in the paint again!
Prepared Statement Example: (excerpt from abm rancher update routine)
try(PreparedStatement prep = connection.prepareStatement(
"UPDATE rancher SET playerName=?, offspringCounter=?, rewardCounter=? WHERE PlayerId=?;"))
connection.setAutoCommit(false);
for(Rancher rancher : list)
prep.setString(1, rancher.getPlayerName());
prep.setInt(2, rancher.getOffspringCounter());
prep.setInt(3, rancher.getRewardCounter());
prep.setInt(4, rancher.getPlayerId());
Display More
Happy coding!
-
Hi, @sharkbitefischer!
This issue is already old hat! This will be resolved by 80 % with the next game update. The problem with both shearing and feeding will be fixed in the next abm plugin update (ETA: after the game update...sooner or later ).
See page 1 of this thread:
Known issue:
Sheeps can't be fed properly, will be fixed with the next game update
and further reading (german only):
PlayerNpcInteractionEvent und geschorenes Schaf
By the way: What's up with the leash-slipping animals? Do you have some news?
animals slipping there leashes and escaping
-
-
Danke für die umfassende Antwort! Das klingt super
Das mit der Ignore-List ist eine gute Idee. Um den Gedanken weiterzuspinnen:
man könnte die Liste auf drei aufteilen: jeweils eine für "freundlich", "feindlich" und "neutral".
Je nach Tierart bzw. -verhalten könnte dann individuell entschieden werden.
Vielleicht z.B. beim Tiger entspräche die "freundlich"-Liste = ruhig bleiben, "feindlich"-Liste = Angriff - ein Reh dagegen würde flüchten.
Ein Herdentier würde die Nähe zu einem aus der "freundlich"-Liste suchen. Hmm, keine Ahnung, ob dies zielführend ist. Ist mir gerade so eingefallen.
Aber mit den Events: das geht doch immer!
P.S.: auf jeden Fall freue ich mich schon auf das Update!
-
Exakt! ...fehlt nur noch eine standesgemäße Hirtenkleidung inkl. -stab!