Page 1 of 3

Current Development

Posted: Tue Apr 11, 2017 9:29 am
by CJK
Wanted to make a thread where I (and other devs are welcome) can show works in progress. Consider it teasers.

Mostly I end up working on various bugfixes and whatnot that 80% of you will never notice, but occasionally it's nice to do "in your face" features.


First, I'm working on bringing back the old "Examine Character" feature by building it into the dialog used to name characters. This was previously put in the screenshots thread, but I'd rather not clutter that.
ltgmkay wrote:
Image


The most basic version may not be possible until a few weeks after Easter, and the fullest extent until early May.

Progress update:
Image
Not bad for two nights of work.


My short term goal is pretty much what you see in that second image. Things holding it back from going live:
  • I had to hack together a LOT of the client side. It will take me at least a day to clean that mess up.
  • I disabled almost all of the parts to the script that were misbehaving. I have to go back and fix those.
  • Somebody thought it was a good idea to gender every German noun. This makes it really hard to build sentences when you have no idea what objects are being used. The hack used to get around this in the old system is unusable, recreating it would be incredibly tedious, and maintaining it would be impossible. Until I can figure a way around the German side of this, I'll be a bit blocked.

I'll "ship" this feature as soon as those issues are overcome.

Mid term goal is to have it so by default this just uses the "polite" examine (doesn't notify ho you're examining) and to add a button that will allow changing it into a the "rude" examine. I have a couple ideas on how to do this, but there are technical hurdles I don't want to mount. I have no idea when this would be delivered, because I'll step away from this feature to shift priorities once the basic form is finished.

In the long run I would like to expand this so you can actually see the items they have, like in your own inventory. This way you should never need to drop items just to show them to people. It always stuck me as silly that I can't see the hammer somebody is beating my face in with. This is very distant because I would need some server changes.

Re: Current Development

Posted: Tue Apr 11, 2017 10:07 am
by Estralis Seborian
What about the "free text"? I know many players would welcome an option to write their own character description.

I think upon double clicking a character, the first thing to appear should be a selection menu what you want to do. Name the character, examine, report to the GMs, store a note, attack ;-), appraise good RP,...

Re: Current Development

Posted: Tue Apr 11, 2017 10:24 am
by CJK
Estralis Seborian wrote:What about the "free text"? I know many players would welcome an option to write their own character description.
I'm currently focusing on the minimal-shippable-product version of this. Once that is IG, it can be expanded on in the future. Before I can bring back the custom descriptions, I will need to figure out how that old system worked. Currently, there is no client framework for that whatsoever, not even a protocol to tell the server that we are sending one up. The CharLookAt already had a lot of framework client-side that I could build from, which is why the turn around has been so quick.
I think upon double clicking a character, the first thing to appear should be a selection menu what you want to do. Name the character, examine, report to the GMs, store a note, attack ;-), appraise good RP,...
Here's the mantis ticket for anybody who wants to make suggestions: http://illarion.org/mantis/view.php?id=7007
A lot of "this would be nice" bells and whistles would take a surprising amount of work for me to implement. Others would be really easy, and I just haven't though of the obvious solutions to them. But really, I'll probably shift away from any active work on this once the basic form of it is IG for usage.

There's just too much work to go around at the moment.


Edit: On review, I cannot find the support for the custom description anywhere in the server, so it may not be possible without server changes. :( I don't feel particularly called to try doing server dev work any time soon, and server has wayyyyy higher priorities for Vil's limited time. Sorry, I miss the feature too.

Re: Current Development

Posted: Tue Apr 11, 2017 11:24 am
by Achae Eanstray
The roleplayed individual could possibly be different from what is shown as the name can be different i.e. added by the player looking at the character.

If not set by the player i.e. "elderly, young, dressed in rags etc. then I am assuming the description would be optional to allow for creativity? As an example, some elect on the character page not to show the age because they may be roleplaying something different...giving the players a choice would be great..


Thanks for all the work. :)

Re: Current Development

Posted: Tue Apr 18, 2017 5:29 am
by Omarcomin
This is going to be huge. Looking forward to the update!

Re: Current Development

Posted: Tue Apr 18, 2017 5:36 am
by CJK
Omarcomin wrote:This is going to be huge. Looking forward to the update!
Thanks! I took a break from development the latter half of the week in observance of Holy Week, but I intend to put the prototype form up on the development server and client after the next update, which I believe is slated for soon.

Don't get too excited though, it will be very simple at first. The biggest "feature" I am currently concerned with is how I will be able to support German properly.

Re: Current Development

Posted: Thu Apr 20, 2017 10:11 pm
by snus-mumrik
Thanks for the work, and especially for sharing the work-in-progress.
Perhaps there could be a sub-forum for dev blogs, where such threads could be organized (thread per feature or thread per developer).
I understand that describing the progress is additional work for the developer, but it makes the users feel what's going on (much more human-friendly than on bug tracker) and for the dev it's a good place for getting early feedback and "like"s from the users.

Re: Current Development

Posted: Tue Apr 25, 2017 5:14 am
by CJK
Alright, I've pushed the client side of this to the Development Client and am waiting for a pull request to be merged so the barebones basics can be put on the development server.


What it lacks:
  • Rigorous English testing, because I lacked the time. Let me know what issues in Engilsh need to be fixed or post them here: http://illarion.org/mantis/view.php?id=7007
  • Proper German genders. A native German developer will really need to take that on. Estralis, Merung, Caldarion, one of those guys who are more talented than I. Whoever does should PM me with any help they may need.
  • Custom item names and descriptions. I actually know "how" to do this, but I am leaving it aside until the barebones version is fully functional in German. I want that to go to release server ASAP and not get delayed by adding extra features on top yet.
  • It will still tell you that you feel watched, but will no longer tell you just who is staring at you. Sorry, this was a quick compromise I had to make to save a lot of time. If that feature is sorely missed, I will add it eventually after the more important parts.

How to use it:
  • Launch the dev client and log into the dev server. Neither release server nor release client will work. As a side effect, the dev client currently can not be used to name people.
  • Double click a player character as if you were naming them. If nothing comes up, please go to http://illarion.org/~devserver/script_error_log.php and post the lines at the bottom of the page that include "playerLookAt". Those will help me find the broken part of the script much faster. If you aren't sure what to post, just quote the last 10 lines or so.

Re: Current Development

Posted: Tue Apr 25, 2017 10:55 pm
by Evie
Someone was in dev server testing look at ..here is the relevant notes from the log


1 Apr 25 22:31:30 Script (notice): Debug Message: Snus is looking at Itchy Witchy
#1 called by: .../share/servers/devserver/scripts/server/playerlookat.lua:34

1 Apr 25 22:31:30 Script (err): .../share/servers/devserver/scripts/server/playerlookat.lua:35: attempt to index global 'uniquechardescription' (a nil value)
#1 called by: .../share/servers/devserver/scripts/server/playerlookat.lua:35

Re: Current Development

Posted: Wed Apr 26, 2017 1:09 am
by CJK
That would be somebody using the dev client but without the proper script support. My pull request hasn't been merged yet by somebody with appropriate access, so the needed scripts don't yet exist on the server.


Until this is merged, it won't work anywhere: https://github.com/Illarion-eV/Illarion-Content/pull/52

Re: Current Development

Posted: Wed Apr 26, 2017 3:16 am
by Evie
ltgmkay wrote:That would be somebody using the dev client but without the proper script support. My pull request hasn't been merged yet by somebody with appropriate access, so the needed scripts don't yet exist on the server.


Until this is merged, it won't work anywhere: https://github.com/Illarion-eV/Illarion-Content/pull/52
Merged to development server and a reload done. It should be able to be tested now. Sorry for not understanding. You can pm me if you have things to merge. |
Evie

Re: Current Development

Posted: Sun May 14, 2017 5:24 am
by CJK
Alright so this update is pretty much unrelated to the PlayerLookAt project. That system is still somewhat stalled on the German front, and I have essentially not touched it since handing over to the Germans. It appears an agreement has been made there on how to handle it, so movement will continue soon.

This is about gods, specifically the way they view you: your character's Divine Favor. Bet you thought they weren't looking!

I have started opening up and working frantically at several mantis tickets related to getting this feature in game. The fundamentals are done, and I am now just building out a bit.

For one of these, I am looking for some very simple input. I need lists of text that I can use to represent different levels of favor so that your character can have a good, in-character, idea of how they stand with their god. There will be common lists (English & German of course) used by all gods, and I can also create modified ones for any individual gods. There will be positive as well as negative labels. For example, murdering enough Sirani priestesses will get me to the point of being labeled "anathema" by her.


Sample common positive list:
  • Neophyte
  • Follower
  • Faithful
  • Beloved
  • Revered
  • Elevated
  • Chosen
  • Avatar
Sample common negative list:
  • Ill-doer
  • Disliked
  • Faithless
  • Despised
  • Wicked
  • Foe
  • Heretic
  • Anathema

Perhaps Bragon considers somebody a "Flame Bearer" as a positive, and Moshran considers somebody a "Grand Corrupter" as a positive.

Edit: It is all the same to me if these end up being adjectives or nouns. I can make either one work just fine.

Edit 2: Think of the labels as ranging from -100% favor to 100% favor. If you can offer a range of favor (0% to 10%, 20% to 23%, -15% to -42%) that goes with your label it would be even better.

Re: Current Development

Posted: Sun May 14, 2017 5:37 am
by Dantagon Marescot
Stealing this from another game. At the very least this gets us some negative and positive suggestions. These are more how the god feels about you than what you are devotion wise to the god.
100 Exalted
90-99 Delighted
80-89 Charmed
70-79 Happy
60-69 Pleased
50-59 Indifferent
40-49 Displeased
30-39 Irritated
20-29 Angry
10-19 Very Angry
0-9 Wrathful

Important thing is to get a base list in. We can always change something such as Exalted or Beloved to something epic sounding later.

Re: Current Development

Posted: Sun May 14, 2017 6:22 am
by CJK
As a side note, the work I'll be doing on this system before actually pushing it to devserver can be seen on my github page.

I will push to there whenever I have a logical bit of progress done. It just won't go to dev until the system is essentially done and ready to be called by quests, altars, etc.

Re: Current Development

Posted: Thu May 18, 2017 6:00 pm
by Dantagon Marescot
Want to help out? I need the information pertaining to this mantis ticket so I can quickly identify missing areas that need filled. Please feel free to add directly to this post or to the ticket itself and I will update as necessary.

Es tut mir lied, mein Deustche ist sehr schlecht, aber übung macht den Meister. Ich suche Priester NPCs Ortung, vor Priester Zauber Erstelle werden. Der Priester NPCs sollt um Altar herum vorliegen. Bitte hilfe mir dieser NPCs finden. Schreibt die Antwort hier oder im Mantis Ticket unten.

http://illarion.org/mantis/view.php?id=11572|

"NPCs who will have quests relating to priest magic should be readily available before implementation. Attempting to determine open slots.

God//Gott ----------- Priest//Priester
Adron:
Chegra:
Elara:
Irmorom:
Malachin:
Moshran:
Nargun:
Oldra: Elanor Fairbanks
Ronagan:
Sirani:
Zhambra: "

Re: Current Development

Posted: Thu May 18, 2017 10:11 pm
by Evie
Dantagon Marescot wrote:Want to help out? I need the information pertaining to this mantis ticket so I can quickly identify missing areas that need filled. Please feel free to add directly to this post or to the ticket itself and I will update as necessary.

Es tut mir lied, mein Deustche ist sehr schlecht, aber übung macht den Meister. Ich suche Priester NPCs Ortung, vor Priester Zauber Erstelle werden. Der Priester NPCs sollt um Altar herum vorliegen. Bitte hilfe mir dieser NPCs finden. Schreibt die Antwort hier oder im Mantis Ticket unten.

http://illarion.org/mantis/view.php?id=11572|

"NPCs who will have quests relating to priest magic should be readily available before implementation. Attempting to determine open slots.

God//Gott ----------- Priest//Priester
Adron:
Chegra:
Elara:
Irmorom:
Malachin:
Moshran:
Nargun:
Oldra: Elanor Fairbanks
Ronagan:
Sirani:
Zhambra: "
I don't believe we have any priest npcs of the younger gods but Oldra. Currently in game are two Bragon Priests and a priestess of Findari.

Re: Current Development

Posted: Fri May 19, 2017 12:52 pm
by Q-wert
There is a Templar-NPC for Tanora: Ssalva
(neither priest by name, nor of the Young Gods, nor close to the respective temples, I know.)

Re: Current Development

Posted: Fri May 19, 2017 6:01 pm
by Dantagon Marescot
Evie wrote:I don't believe we have any priest npcs of the younger gods but Oldra. Currently in game are two Bragon Priests and a priestess of Findari.
Well in that case, who, that isn't a dev, has an interest in building younger god priest npcs? These are just base NPCs. They will go near their respective altar (not directly on top so their triggers don't distract from rp). They do not need quests, we will get to that later.
Q-wert wrote:There is a Templar-NPC for Tanora: Ssalva
Will keep the NPC in mind for later. ;)

Re: Current Development

Posted: Wed Jun 14, 2017 9:47 pm
by Banduk
Player lookAt
The function is now available on the development server. Feel free to get your own imagination.
The function is used when double click (name) another player char or use a stationary mirror (teleport to market Runewick) or a portable mirror (!create 336).

What you see depends on the perception of the char and the distance.
As a easteregg there is a gender bonus for male (hand tool or weapons) and female (shoes, jewelry).
We have no clue, if the distance and perception dependency is good designed.

What can seen:
  • Estimation of the chars age and condition.
  • All the char wears.
  • Estimation of the quality and durability of what the char wears.
  • What's in the belt.
  • Raw estimation of the higher characters attributes.
  • Raw estimation of the carried weight.
The primarily test targets is an error free function (is anything displayed wrong, might be the text becomes to large if special items are carried etc.?) and the distance, perception, gender dependency.

There are some ideas we cannot implement at the moment due to technical and capacity reasons. One is a user generated description.

Re: Current Development

Posted: Wed Jun 14, 2017 10:05 pm
by Banduk
Magic Gems for Craftsman and Craftswomen

I started a new development project that is now ready to test on the development server.
Since it's too big to test everything your help is appreciated.

The following components were integrated:
  • Equip hand tools with gems
  • Remove gems from hand tool by magic smith
  • Remove gems from tools, weapon, wands and armoury in case the related item breaks during work or fight and put them back to inventory
  • Remove gems from tools, weapon, wands and armoury in case the related item breaks during character death and put them back to inventory
  • Remove gems from tools, weapon, wands and armoury in case the related item was donated and put them back to inventory
  • Magic gems cannot be donated.
  • Decrease work time during gathering. There is a -18% time advantage in case of a full set of level 3 (light) gems
  • Decrease work time for intermediate products (stackable) There is a -18% time advantage in case of a full set of level 3 (light) gems
  • Increase the chance of a higher quality for final products (non stackable)
    There is one quality better for each full set of magic gems for the best possible quality. The advantage is added to the best possible quality only, the worst stay as it is. So the probability to create a perfect item increases but you never can be sure you made always perfect items.
Flaws
  • Due to technical reason it is currently for me impossible to return gems to player if a gemmed item is sold to an NPC.

How to create magic gems on the development server:

Code: Select all

sappire !create 284
obsidian !create 283
ruby !create 46
amethyst !create 197
toraz !create 198
emerald !create 45

use the trowel
setdata gemLevel 1
How to get a nearly wrecked item

Code: Select all

use the trowel
setqual 101

Re: Current Development

Posted: Fri Jun 16, 2017 9:19 am
by Drugar Stonesmasher
Hallo Banduk,

hast du bedacht, daß das automatische Herauslösen der Gems beim Verkaufen, Zerstören, Spenden ein kostengünstiges Umgehen des Herauslösens beim Gem-NPC ist?
Wäre allerdings zu lösen, wenn nicht das herauslösen Geld kostet sondern das sockeln... was aber glaub ich anderweitige Probleme erzeugt,
weil das programmatisch vermutlich viel schwerer zu realisieren ist.

Re: Current Development

Posted: Fri Jun 16, 2017 3:46 pm
by Banduk
Drugar Stonesmasher wrote:Hallo Banduk,

hast du bedacht, daß das automatische Herauslösen der Gems beim Verkaufen, Zerstören, Spenden ein kostengünstiges Umgehen des Herauslösens beim Gem-NPC ist?
Wäre allerdings zu lösen, wenn nicht das herauslösen Geld kostet sondern das sockeln... was aber glaub ich anderweitige Probleme erzeugt,
weil das programmatisch vermutlich viel schwerer zu realisieren ist.
Removing gems at break or donation of an item is free of charge. You can use that to bypass the costs for removing the gems at the magic gem smith. That's right.

The point is, the charge was made to avoid gem swapping in between different gears. This use case is not given if the item was destroyed. The item you break or donate doesn't exist anymore.

If you sell an gemmed item, the gems are lost. In that case the magic gems are not handed back.

Re: Current Development

Posted: Sat Jun 17, 2017 11:12 am
by Ragorn
Banduk wrote:
Drugar Stonesmasher wrote:Hallo Banduk,

hast du bedacht, daß das automatische Herauslösen der Gems beim Verkaufen, Zerstören, Spenden ein kostengünstiges Umgehen des Herauslösens beim Gem-NPC ist?
Wäre allerdings zu lösen, wenn nicht das herauslösen Geld kostet sondern das sockeln... was aber glaub ich anderweitige Probleme erzeugt,
weil das programmatisch vermutlich viel schwerer zu realisieren ist.
Removing gems at break or donation of an item is free of charge. You can use that to bypass the costs for removing the gems at the magic gem smith. That's right.

The point is, the charge was made to avoid gem swapping in between different gears. This use case is not given if the item was destroyed. The item you break or donate doesn't exist anymore.

If you sell an gemmed item, the gems are lost. In that case the magic gems are not handed back.
Drugar hat hier einen guten Punkt angemerkt.

Aktuell: Wenn jemand einen gesockelten Gegenstand verkauft oder spendet sind die Edelsteine weg -> Pech gehabt

Warum soll das jetzt geändert werden und was hat das mit sockelbarem Werkzeug zu tun?
Ich sehe kein Problem darin, dass jemand seine Edelsteine verliert, nur weil er vergessen hat sein Werkzeug rechtzeitig zu reparieren.

Problematischer ist eher der potentielle Missbrauch beim Spenden:
Beispiel 1: Level 50 Schwert spenden, Edelsteine gratis zurück, Level 60 Schwert sockeln, nach erfolgreichem Skillgain wieder Spenden, Edelsteine gratis zurück, und so weiter ....
Beispiel 2: Sehr gute Level 100 Rüstung spenden, Edelsteine gratis zurück, Excellente Level 100 Rüstung sockeln, .... und irgendwann exzellente Level 100 Rüstung spenden, Edelsteine gratis zurück, perfekte Level 100 Rüstung sockeln

Lösungsalternativen:
1. Bereis von Drugar vorgeschlagen: Sockeln ist kostenpflichtig (was programmatisch unproblematisch, da es genauso schwer oder leicht zu lösen íst, wie vieles andere)
2. Alles bleibt, wie es war - natürlich mit Ausnahme der sockelbaren Werkzeuge (never change a running system :))
3. Gesockelte Items können weder gespendet noch verkauft werden

Ich persönlich bin für 2., da es das Risiko minimiert, dass sich neue Fehler in den ungetesteten alten Code einschleichen.
Mit "ungetesteten alten Code" meine ich die aktuelle nicht existente Testabdeckung durch automatisierte Unit Tests, z.B. mit LuaUnit.

Re: Current Development

Posted: Sat Jun 17, 2017 7:44 pm
by Evie
Coming with our next update will be the finished rework of all newbie training NPCs to Guild/Association NPCs. This change over allows craftsmen of a craft, living in the primary craft town, to receive rewards all the way up to the mastering of the craft. We have three reworked NPC's like this already live in-game now: Daniel Brock, Toni Spirotelli, Thergram Silverbeard. This change will also result in four npcs being deleted and one moved to a new town.

Re: Current Development

Posted: Sun Jun 18, 2017 4:46 pm
by Q-wert
Regarding the criticism to the changes of donating/breaking items:
  • The cost for removing magical gems does have one purpose: It keeps players from constantly transferring gems between different sets waiting in their depot according to situation. This remains unchanged with the update.

    Changing donating and breaking of items so that gems, the reward for long time activity in this game, are returned in stead of destroyed is a good thing in my eyes. The purpose of the removal cost is still very much intact, as the item is taken out of the game in both cases, encouraging players to get another one. Using a gemmed weapon, armour or tool until it breaks (or one donates it right before it does) and buying a new one from a player character is now a very viable option. One with way more player interaction (roleplay, yay!) than running to the repair npc.

    I also wouldn't want anybody to loose the reward for your long time activity to a misclick or lag.

Re: Current Development

Posted: Mon Jun 19, 2017 7:51 pm
by Dantagon Marescot
Working with Mkay to define the basics of devotion. In the proposed matrix each row defines how doing certain things for a certain god would cause jealousy among the other gods. There is a 100% chance doing something to make one god happy will make someone else unhappy. Values are not set and opinions are welcomed should you disagree with the percentages.

Re: Current Development

Posted: Tue Jun 20, 2017 7:31 pm
by GolfLima
the colums of the different gods are also different:

B: Nargun = 92
C: Elara = 92
D: Adron = 91
E: Oldra = 84
F: Cherga = 59
G: Malachin = 103
H: Irmorom = 99
I: Sirani = 80
J: Zambra = 103
K: Ronagan = 117
L: Moshran = 160

==> what about the elder gods?

Re: Current Development

Posted: Tue Jun 20, 2017 8:15 pm
by Estralis Seborian
Wanted to write the same, looks like Cherga is everybody's darling :-).

Find below alternative numbers based on the magic concept. In the concept, you can find a relation circle that shows how good the gods come along. The closer the gods are in the circle, the less the chance an action for another god reduces the god's favour to a character.
god circle.png
god circle.png (26.58 KiB) Viewed 8947 times
Here are exact numbers, based on the math proposed by Ars Magica. I also used comprehensive colours so you can immediately assess how well the gods get along. Of course, the result is symmetric.
god circle calculation exact.png
god circle calculation exact.png (38.17 KiB) Viewed 8947 times
For those who prefer round numbers and more distinct differences, see the table below. Note that scripts don't need round numbers, the numbers in the table above are all calculated using very simple principles, described in Ars Magic.
god circle calculation round.png
god circle calculation round.png (36.64 KiB) Viewed 8947 times

Re: Current Development

Posted: Tue Jun 20, 2017 8:19 pm
by Dantagon Marescot
The column sums do not matter. What matters are the numbers in the rows. For example, for the Row Adron, an action that gains praise from him has a 100% chance to make a god in the column jealous.

Elder Gods aren't involved in this part of the equation. ;)

Estralis: Cherga currently has low number because although she is the goddess of 'death', unlike Moshran, she doesn't seek death. Instead she is the kindly old grandmother you meet at the end. Yeah sure, she may have been involved in setting a certain someone free a few eons ago, but that is all water under the bridge. Chegra doesn't care who you worship. She is essentially view ig as neutral. On the other hand, Moshran would be incredibly pissy about you not slaughtering the world.

Re: Current Development

Posted: Tue Jun 20, 2017 8:52 pm
by Estralis Seborian
Hmm, maybe you disclose the assumptions behind your distribution? To me, it looks imbalanced and arbitrarily chosen. That the distribution is not symmetric puzzles me. Assuming random player behaviour, after some time, everyone would have minimum alignment with Moshran and maximum alignment with Cherga.

Also, the numbers you have chosen seem to ignore the god relation circle that was discussed quite intensively in the past. Is there a special reason why we rewind such discussions to start?