Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion Goto page 1, 2  Next
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Mon May 25, 2020 1:49 pm   

Massive failures!
 
According to the missing zugg's fantastic documentation, there should be a pattern to vars, aliases, packages, etc that follows unix-like formatting. Ie., if an alias/var is not in the current level then a search goes up a level and up further levels, searching through the nodes at a particular level for a thing.

Now, I have NOT used multiple versions of the same varaible name or alias and I have an alias that takes all of a particular potion from a bag, populated a GLOBAL, UNIQUE variable and that value is used in a button to suck a potion and decrement a counter that is in the button caption. It has been working fine for weeks...and now not.

Once again, I'd send a message to the ghost of zugg but event he ghost of zugg has given up the ghost.

Seriously, if there exists a better or similar mapper out there, depsite paying for this shite software, I'd be on that train. It is a wonder the mapper mostly still works and even that is dependent on gmcp passing vnum info to me as the mapper config is poxxed up beyond belief.

Triggers are now also misbehaving and autologin keeps sending an incorrect password...so I gave up on that also.

It seems like some kind of entropy is built-in! The number of useful functions is dwindling.
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Mon May 25, 2020 5:09 pm   
 
...and now it just crashes and sod all happens.

I feel like I have reached the end of my tether.

If anyone knows the developer goon, kindly get int touch with him and tell him that I'd appreciate a downgrade from shitMUUD back to zmud.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Tue May 26, 2020 2:43 am   
 
Try going through the corrupted package methods again.
I know it can be frustrating, to go through those steps more than once.
But this product was done being developed before you bought it, nearly a year ago.

Making multiple topics complaining about the same issues with the product won't solve your issues, especially if you refuse to go through the methods that address your issues.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Tue May 26, 2020 6:29 am   
 
I have done that several times. Now, I am getting temp triggers making real triggers in different locations, aliases are being copied which makes them fail.

It is a frikkin mess and it all comes down to the fact that, despite the documentation suggesting that unix-like tree structure is a thing...it is NOT! If it were working then I should not have these problems with using unique aliases and variables!

I messaged the whoevers and asked to downgrade my licence to zmud. Am too f**ked off with this half-arsed software to be bothered with it.

The only thing that has not broken, because it was broken to begin with, is the mapper configuration.

If they do not answer or refuse then I'll just pirate a copy and use that.

YAY! for piracy!
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Tue May 26, 2020 11:26 am   
 
New settings should always get made at root unless you specifically tell it otherwise.

Try making your alias in a new empty session.
Then you have a means of testing if it is your current settings that are corrupted, or if the code you are attempting has bad syntax.

CMUD is not UNIX.
The tree structure is a comparison.
That is what the suffix -like means.
You seem to be expecting more than a passing similarity.

No one is forcing you to use CMUD over zMUD.
Each product has a separate license.
If you just want to go back to using zMUD, you can do that right now without involving anyone else.
You may need to request a new key, the same as people reinstalling CMUD.
Expecting a refund after using the software for a year is unreasonable.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Wed May 27, 2020 8:25 pm   
 
I never said refund, I said downgrade. Y'know, like Dell used to do when they shipped kit with win8 and offered win7 as an option.

However, my zMud licence/purchase is still valid.

There is no problem with syntax. I truly believe that there is a fundamental flaw in the engine.

Here is a perfect example:

I have been working like a dervish all day trying to create auto-populating buttons. Auto-populating in the sense that a click will use the best skill/spell. Now I have to use arbitrary figures for a couple of stats as I have no idea of the base damage/ave damage of the spell or skill. Still, the SKILLS appear to be populating the skill damage buttons. Spells are not...and yet the general options, vars and calls are exactly the same.

Each spell or skill has

#VAR name
#VAR name_level

that gets initialised when the class is enabled.

Within the spell/skill class there is also a

#VAR name_tot

which carries the sum of each applicable stat multiplied by an arbitrary figure. The goal is to generate a number that appears to be consistent with the level of the skill/spell and the char stats it requires, and whether it is a primary start requirement or a secondary one. EG.,

(wis*pri_stat)+(str*sec_stat)+(luck*sec_stat)+(level*lev_multiplier)

Then, on a tick, data is written as

Code:

Key          Value
<skill>     <total>


Also, on tick, there is a test to determine the max value for each skill within a particular damage type. For example, bash damage has

bash
kick
dirt kicking
warcry
spunch

and these skills appear at various levels and with various required stats (int/str +luck, dex/str +luck, etc). So each skill ends up with a different total score. The max value test is a function which should return the key for the max value and thus provide the button with the best skill/spell to use for a particular damage type (bash, pierce, magic, fire, cold, etc).

So why do the skills work but the spells do not? I have slipped echo statements in and with spells the function just doesn't seem to be called. Function call is exactly the same for both:

best_skill = @best_val(@skill_score)

So, I ask myself, is the maybe another function somewhere? After all, I go away for an hour and the original function has disappeared...nowhere to be seen. I had to recreate it and made sure that it was the only one.

Now, as far as I see it, the one difference between skill and spell is that skill calls are usually one word and spells are multiple. Yet the spell_score vars are populated with exactly the right data, as are the skill vars. Yet the function is never called for spells.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Wed May 27, 2020 9:59 pm   
 
Without seeing your code I cannot answer this for you.
My guess is that you have a minor typo somewhere before the function call, so it is going off faulty data.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Sun May 31, 2020 3:35 pm   
 
I checked and rechecked. I saw one typo: a '+' where an underscore should be.

The more serious issue was that a variable used as a button caption (@best_holy) was not being populated despite it being correctly written and the same as all the others. I deleted the text and rewrote it. Same problem. It was only when I deleted the entire button and recreated it that it functioned correctly. That is not right at all.

I am still having problems in that no mater how I define variables, new variables are being created by any calls to the variable which write to them.

Thus, I want

Code:

CLASS holy_damage
     CLASS:spella
         write spella_score to holy_scores
     CLASS:spellb
         write spellb_score to holy_scores
     holy_scores


yet I am getting

Code:

CLASS holy_damage
     CLASS:spella
         write spella_score to holy_scores
         holy_scores
     CLASS:spellb
         write spellb_score to holy_scores
         holy_scores
     holy_scores


so I write

Code:

CLASS holy_damage
     CLASS:spella
         write spella_score to ../holy_scores
     CLASS:spellb
         write spellb_score to ../holy_scores
     holy_scores


but it makes NO DIFFERENCE. So, despite the documentation explicitly stating that ../ and ./ should work, IT DOESN'T!

Despite the fact that EVERY variable is unique, regardless of it's location, new varables are being created instead of existing ones being written to.

It is very frustrating for a full-price product.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Sun May 31, 2020 9:47 pm   
 
This seems like different code then you were first referencing.
This is also not in zscript.
I suspect that is why the root reference isn't working.

CMUD may allow you to use other coding languages, but this forum is only for zscript.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Tue Jun 02, 2020 7:18 am   
 
Look, you seem like an intelligent sort most of the time.

IT IS NOT FRIIKIN ZSCRIPT! It is pseudo-code to demonstrate the mechanics of the shitty software that I paid FULL PRICE for that is f**ked-up beyond belief and which the developers are happy to bamboozle the public with.

Let me put it in a simpler way

I want

ITEMA within class BLOB to reference variable BLOBA in class BLOB. What happens is that the variable BLOBA in class BLOB - which is unique within the entire package, as is class BLOB - gets avoided and a new variable BLOBA gets created a level above class BLOB.

Disappointed? f*ck yeah! Would I recommend to a new mudder? No. Tell zugg to kiss my arse!

As far as I am concerned, a lesson learned. I paid less for software that is not only still being developed and maintained, but whose writers are still around to answer questions.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Tue Jun 02, 2020 1:26 pm   
 
And I told you that I cannot address your code if you don't provide it.
Most coding errors are simple typos or logic errors.

For example:
If at any time the Class BLOB is deactivated, then CMUD is forced to create the variable at root, as it does not have the scope to see what is disabled.

If that is not the issue, then you probably have a fresh case of corruption and need to take the proper steps to fix the issue again, no matter how tedious it seems.
If the client runs fine with an empty session.pkg prior to importing your settings, then you know that the issue is with the body of YOUR code.

I get that you are frustrated, so am I. Let's try to stay on the issue we can address: code.
Ranting and cussing out the creator because you can't get it to work is not productive.
Stop looking for external factors to blame. The product is fine (outside of the database module), you are just having local issues with it.
I am trying to help you, but you keep balking at the process.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Sun Jun 07, 2020 5:45 pm   
 
Once again, you are suggesting a problem that the documentation suggests should not happen. If a variable is already declared then ALL references to it at that 'level, or any levels above according to some ./ ../ form of referencing should use it. ESPECIALLY if it is a unique name. I have started wading through it all and supplying

class/subclass/<subclass>/variable

references. The failure here (of course) is that any references to variable use which requires being delimited by single quotes (') fails as one cannot have '/class/subclass/@var', or class/subclass/'@var'. Oh dear!

What leads me to believe that the engine is having problems is that I have been using the scripts to capture eq data to a database and then all of a sudden it stops working. Now I am aware immediately sure of why: same variables being created at all kinds of positions in the package.

Not only that but multiple, exactly similar triggers are being created at the same level/in the same container. How is that possible? Even if I wanted more triggers at various points, having ANOTHER trigger in the same class/at the same point should surely overwrite the previous one? Ah no, because each new trigger has a different priority which (apparently) makes each one a unique trigger...even if it is not.

...and finally...

#TEMP triggers are now actually creating real triggers. Each time some temp triggers fire, a new permanent trigger is created, at some point in the package.

So no, the product is far from fine. It is however, still full price, even with glaring faults. So, having paid for it, I am quite within regular consumer rights to complain about it...even after a year because, a year ago, I was not using such features to the extent that these problems would be unseen.
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Tue Jun 09, 2020 6:19 am   
 
So yet again I blitzed the package and imported various bits.

Database data collection was working....and now it is almost working. Data variable is fully populated yet #NEW <view> @var omits 2 text fields. These fields have data in them in the variable. I searched for any extra instances of the data variable but none exist. So of course the engine is borked. I even disabled almost all classes and tried again with the same record results.

Also, these underpopulated database records are of type potion, yet, if I make a view with ALL fields and set filter type to equal potion. NO POTIONS ARE IN THE VIEW. Yet the potions exist in the database and the type field has the correct type.

So, do tell me that it is my fault and not the fault of the borked software.

Your dedication to the originators is admirable. Mine would be also if it were not for the fact of paying full tit to lying devs. Yes, lying. They clearly stated at a point that all bug reports would be responded to but they are obviously not.

I am weary of it all now.
Reply with quote
Chiara
Site Admin


Joined: 29 Sep 2000
Posts: 387
Location: USA

PostPosted: Tue Jun 09, 2020 11:13 am   
 
I get that you are unhappy because times have changed and the developer is no longer able to devote himself to these products full time.
Being hostile with Shalimar absolutely will not help you with that.

Civility is an requirement on this site.
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Tue Jun 09, 2020 4:58 pm   
 
Times obviously haven't changed that much as you charge the same money now that you did 15 years ago without offering anything in the way of constructive support, or even sporadically active interest in the community that stills sends top-dollar your way.

I am far from hostile toward him/her/it. He/she/it has always been extremely helpful. If I am hostile it is toward the pair of you who just take the money and don't give a crap.

Have you tried calibre e-book software? Now there is a chap who is dedicated to his code and doesn't charge the earth. Updates and bug-fixes galore.

How about you ditch the money-grabbing and hand the code over to him/her/it so that folk who still pay full price to use the software are not just pissing in the wind when it goes tits up?
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Wed Jun 10, 2020 3:43 pm   
 
...and so, after blitzing the database and starting again - which, believe me, re-creating ALL those fields and settings is not fun...for the 5th time - all seemed to be going peachy.

However...after opening up the database again, just scrolling down is blanking the fields! The data that I painstakingly wandered the mud and collected (yet) again is being deleted just by scrolling down with the mouse button while viewing data.

HOW F*CKITTY F*CKED IS THAT?

...and the charming devs wonder why I am unhappy. Shall I send a bug report? But, of course, you don't give a shit. You leave it up to the unpaid masses to fix the crap you still get paid full price for.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Wed Jun 10, 2020 7:26 pm   
 
I have been trying to get you to not use external databases at all.
I really do believe that is the root of the issue, and if you would convert to ONLY using dbVars your headaches would go away.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Wed Jul 15, 2020 11:54 am   
 
DBVars are key value pairs, are they not? That is not the same as a record...or even multiple values for one key. Unless I have it wrong. The documentation (for the most part) doesn't really clarify a lot of things.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Wed Jul 15, 2020 7:43 pm   
 
At the most simple level, yes.
A record is, arguably, just a collection of key-value pairs under a higher-tier key.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Thu Jul 16, 2020 11:15 am   
 
...and how does that sit with >1200 items? Given that the basic equipment record contains >15 fields, and that (currently) I have 1200+ records - which is likely to top 3000-4000 or more by the time I am done, having to have 4000+ 'records' as variables seems like it will bloat the main cmud db file every time I start a session.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Fri Jul 17, 2020 2:21 pm   
 
Well, it can all be stored in one variable.
Pretty sure the code doesn't care how many items are in the database.

The whole point behind using variables is that you no longer need a separate DB file.
It is theoretically possible to have such a large amount of data as to cause some lag when accessed, but it should still be faster than using DB files.
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Sat Jul 18, 2020 7:53 am   
 
Can you clear up how I would use a variable instead of a DB file. I can 'see' databases quite happily in my head but a DB var to store a whole stack of item 'records' is befuddling me.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Sat Jul 18, 2020 2:43 pm   
 
Sure thing!

Your database itself is just a variable: @itemDB

Now when you are constructing a record you will tend to use localVars, just for ease of manipulation.
First, you need the $name of a given item.

$name=Bill

Then you will pull the current value of that record from the database, don't worry if it doesn't exist yet, this system allows for updating records as well as creating new ones.

$this=%db(@itemDB, $name)

At this point you will populate/update the various statistics of a given record:

#ADDKEY $this Level 5
#ADDKEY $this Class Warrior
Etc.

By this point $this is a dbVar in its own right, but localVars get thrown away.
So we will save $this record, back to the main variable:

#ADDKEY itemDB $name $this

And that is how you make a simple two-level database.
You can add as many levels as you need.

You can access individual bits of data via:

@itemDB.Bill.Level
or
%db(%db(@itemDB, Bill), Level)

The second method is required if you have spaces in any of the key names:

%db(@someVar, "Hair Color")

Or show everything you know about Bill with:

#SHOWDB @itemDB.Bill
_________________
Discord: Shalimarwildcat
Reply with quote
hpoonis2010
Adept


Joined: 18 Jun 2019
Posts: 279

PostPosted: Sat Jul 18, 2020 4:28 pm   
 
Mkay.

If I use a 'top level' dbvar to match the file database, equip(ment)

Each item in Aard has a unique ID key, obviously the prime value to use for 'records' as it should be a 'no duplicate' item.

The minimum 'fields' would be ID, Name, and Keywords.

So, do I create a dbvar called @equipment and below that ...?

Once again, I can see the file db.

Populate @record vars

#DBLOAD
#NEW @record
#DBCLOSE

But I cannot quite piece together your version.
Reply with quote
shalimar
GURU


Joined: 04 Aug 2002
Posts: 4662
Location: Pensacola, FL, USA

PostPosted: Sat Jul 18, 2020 5:42 pm   
 
Its kinda up to you how you want to structure it, but from what I am hearing you have two options:

@equipment
-ID
--Name
--Keywords

OR

@equipment
-Name
--Keywords
--ID
---Deviating stats based on ID
_________________
Discord: Shalimarwildcat
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net