Pages:
Author

Topic: Crypto Kingdom Ultima Version Development Thread - page 9. (Read 24700 times)

legendary
Activity: 1276
Merit: 1001
It seems quite broken now, in the character screen:

Born: 483887802

Start year: 483887802

Age now: -483886194

It also shows me as marquess, while I'm wizard.

Promotion history is all over the place.

I seem to have misread earlier about MG-2, it's not in the google DB. My Ultima decorations now show a new MG-4, which is not in the google DB either. I thought I had one of those MG-x, but the google DB does not show any so I probably remember wrong here.

jr. member
Activity: 36
Merit: 0
Hello everyone,

Thanks for great testing and very useful testing results.

I uploaded latest changes which contains several fixes for found issues:
- promotions and decorations links are fixed
- my items link is also fixed and working now
- updating My Profile and uploading avatar working fine now
- My Chronicle is functional but it will show empty dataset for most of the users since there will be presented money history, asks, bids and other commands history
- wiki is still most in the progress, but soon will be new update which will complete functionality. You will find wiki page with description how to make wiki Smiley

We will continue to improve it so be ready for new great features very soon and thanks again for great feedback Smiley
legendary
Activity: 1276
Merit: 1001
Here's a list of the things that don't look right:

- clicking on promotions goes to a 404 page (https://cryptokingdom.me/player/promotions/)
- same for decorations
- same for "my items"
- earned decorations is missing MG-2 from 1600
- age shows 44, google says 47
- "my chronicle" is empty (probably expected, but I'll mention just in case)
- in the Agora market, I seem to have no items whatsoever: click on "view my items", then on "gold coin", one category of which I own a number, I get an empty screen. Same for all other categories I tried.
- in the wiki, I can't click on any of the articles presented (non 404, just nothing happens when clicking)

legendary
Activity: 1610
Merit: 1004
BUY W1600M 50 0.05 -> "New bid added for 50 units of w1600m at limit price of 0.05"

Displays Price as 0 on the table of BUY ORDERS

Also, the object property name is switched up:

Code:
{command: “buy”, 
itemID: “w1600m”,
amount: “1”,
“characterID: “7”}

the "characterID" property should be Price
sr. member
Activity: 350
Merit: 250
Awesome news, can't wait to start playing, I'm mostly interested in the sophisticated internal market this game is displaying. It'll sure be interesting.
donator
Activity: 1722
Merit: 1036
Excellent! I am back from dinner (pig head and heart, cooked with wine and laurels / French wine 2012) and PJ is back from his appointment.

The issues:
- admin mode not enabled for councillors
- slim application error prevents linking to items
- some histories tabs not erased

are under operation and should be ready shortly. After that, I am making the 2nd stage call to all the testers to test and check that the functionality shows up decently. (Built script is an example of a thing we harshly postponed to be done in connection with the "building" module.)

When this round is done, and it may be just 1-2 hours, I still expect to be able to send the passwords of all claimed accounts to their holders.

Please change your password right away. It will be locked if used without changing password!
sr. member
Activity: 266
Merit: 250
Agora testing "My Items"

The slim application error persists, but I checked some of my items at random by substituting the /CUL in URL with the items code:

CUL correct amount
SCI correct amount

W1600M correct amount
CLXII correct amount
MEAD correct amount

RM1600B correct amount
WIRS correct amount
TS139 correct amount
COT1369 correct amount
H9 correct amount (my dear unicorn Star)

All data on random testing appears correct.
donator
Activity: 1722
Merit: 1036
Checked in with Saddam, Riddick, Gabriel, Saddam QC and changed passwords successfully.

All info is correct except for land and build area.

For example:
-Saddam's land is displayed as 4,590 when the value from GoogleDB is 46.
-Riddick's land is displayed as 860 when GoogleDB is 9.


Thank you for trying out!

- Land is correct in Ultima. The googleDB land has been incorrect ever since the coordinate system was started to designate the actual borders. Also urban land "Land" is now displayed as sqm, which makes the value 100 times higher than previous q.

- Built area "Built" script is not implemented.
legendary
Activity: 1610
Merit: 1004
Checked in with Saddam, Riddick, Gabriel, Saddam QC and changed passwords successfully.

All info is correct except for land and build area.

For example:
-Saddam's land is displayed as 4,590 when the value from GoogleDB is 46.
-Riddick's land is displayed as 860 when GoogleDB is 9.
sr. member
Activity: 266
Merit: 250
Other issues (less urgent):

Changes to the data in profile page are not saved: changing profile pic, selecting the character age.

Land map does not have the latest import, some recently (in the last 5 game-years) built areas do not appear on map, also some (recently) fixed coordinates have not been updated.

I cannot read Wiki entries, can only see first two lines of the text but no link to access the full wiki text.

Built appears as 0. (so this was not imported, I hear on purpose, and will be done later)

In /player/editprofile page when clicking promotions, decoration or items: Page not found. (404 looks like you have been lost) Also there the number of decorations appears as 0. Promotions and items have correct amount, the same as on the profile page.
donator
Activity: 1722
Merit: 1036
Thank you. These are the reason that I gave the access to a small test people only. The agora and trade history will be fixed in 30 minutes since PJ comes back from his deserved break (in a few hours).

To me it currently looks that we can continue migration, the first things to be checked before I start to give masses of accounts out are the item balances.

Come to IRC to ask me for your passwd. 1-2 more testers can have theirs now.
sr. member
Activity: 266
Merit: 250
Ultima testing:

Login and password change work well. Login with new changed password works well.

Balance for moneritos, stone, gold, silver and horses, appear correctly. Promotions are correct, decorations (medals) as well.

In Agora, View my items: Slim application error. (could not check if imported correctly)
Type: ErrorException
Code: 8
Message: Trying to get property of non-object
File: /var/www/html/releases/20151004150520/app/controllers/PlayerController.php
Line: 286


hero member
Activity: 649
Merit: 500
Before anything else I would like to congratulate you for this milestone. This is a game of great complexity and its great to see it flow so seemingly easy from your mind. Congrats on this milestone of getting the game out here.  Grin

This is the stuff I found so far. Hope it's easy to solve so that we can get our hands on our candy.

1. Agora Market > My Items

URL: https://cryptokingdom.me/player/playerItems/91

Code:
Slim Application Error
The application could not run because of the following error:

Details

Type: ErrorException
Code: 8
Message: Trying to get property of non-object
File: /var/www/html/releases/20151004150520/app/controllers/PlayerController.php
Line: 286
Trace

#0 /var/www/html/releases/20151004150520/app/controllers/PlayerController.php(286): Slim\Slim::handleErrors(8, 'Trying to get p...', '/var/www/html/r...', 286, Array)
#1 /var/www/html/releases/20151004150520/app/bootstrap/routes/player.r.php(126): CryptoKingdom\PlayerController::listItems('91')
#2 [internal function]: {closure}('91')
#3 /var/www/html/releases/20151004150520/vendor/slim/slim/Slim/Route.php(468): call_user_func_array(Object(Closure), Array)
#4 /var/www/html/releases/20151004150520/vendor/slim/slim/Slim/Slim.php(1357): Slim\Route->dispatch()
#5 /var/www/html/releases/20151004150520/vendor/slim/slim/Slim/Middleware/Flash.php(85): Slim\Slim->call()
#6 /var/www/html/releases/20151004150520/vendor/slim/slim/Slim/Middleware/MethodOverride.php(92): Slim\Middleware\Flash->call()
#7 /var/www/html/releases/20151004150520/vendor/slim/slim/Slim/Middleware/PrettyExceptions.php(67): Slim\Middleware\MethodOverride->call()
#8 /var/www/html/releases/20151004150520/vendor/slim/slim/Slim/Slim.php(1302): Slim\Middleware\PrettyExceptions->call()
#9 /var/www/html/releases/20151004150520/app/bootstrap/start.php(106): Slim\Slim->run()
#10 /var/www/html/releases/20151004150520/app/bootstrap/setup.php(63): require_once('/var/www/html/r...')
#11 /var/www/html/releases/20151004150520/index.php(8): require_once('/var/www/html/r...')
#12 /var/www/html/index.php(2): require_once('/var/www/html/r...')
#13 {main}

2. The past trades on the Agora market were not erased for the migration (Player Dashboard > My Chronicle)

3.  Player Dashboard => Edit Profile => Left StatusBar -> Link to Promotions, Decorations and My Items lead to a 404.

4. Migration Stuff
Title not ok.
Age nok
CKG OK
CKS OK
Moneretos OK
IC OK
CUL OK
Rest of Items OK
hero member
Activity: 649
Merit: 500
I am sorry for my ignorance, but what is "WOW 1991"?

Thanks.

You open it and you think "WOW! Am I in 1991 again?"  Tongue
hero member
Activity: 574
Merit: 500
I am sorry for my ignorance, but what is "WOW 1991"?

Thanks.
hero member
Activity: 649
Merit: 500
Sorry to hear about the delayed release but glad to hear it will be on a "WOW! 1991" level experience.  Smiley I am impressed with what has been achieved thus far and look forward to the release.
 
----------
---------

Related to testing, I think it would be useful for PJ to drop oneliners with feedback to the feedback. Tongue

Something like "Stop testing. The last issues are being addressed." Or "Market engine updated - Retest"

This because I was about to start another round and found the issue bellow and don't really know if I was supposed to be testing the market right now, if the code I would be testing is final, nor if you guys are focused on this part of the engine now.


start 15:09

char1:
My balance 400,205,930
Owned Items of BEER 0

char2:
My balance 14,432,739
Owned Items of BEER 210

char1:
buy BEER 1 400mil
New bid added for 1 units of beer at a limit price of 400000000.
buy BEER 1 400mil
New bid added for 1 units of beer at a limit price of 400000000.
buy BEER 1 400mil
New bid added for 1 units of beer at a limit price of 400000000.

char2:
sell beer 3 400mil
Something went wrong

-- The bids where reduced to 2 of 1 BEER at 400mil each

char1:
My balance 205,930
Owned Items of BEER -1 (the item was deducted from the buyer)

char2:
My balance 414,432,739
Owned Items of BEER 211 (the item was added to the seller)

char1:
buy beer 1 5000
New bid added for 1 units of beer at a limit price of 5000.
buy beer 1 5000
New bid added for 1 units of beer at a limit price of 5000.

char1:
My balance 205,930
Owned Items of BEER -3 (the item was deducted from the buyer)

char2:
My balance 414,432,739
Owned Items of BEER 213 (the item was added to the seller)

end 15:20
donator
Activity: 1722
Merit: 1036
Development News

As you have noticed, I am not bombarding the threads with every day "it is migrating NOW" posts anymore. The reason is that we have a good situation: our google DB is working much better (than in March for instance), and we also have the Ultima platform that can handle all the static data (ie. data that defines the status of the game). In some ways Ultima is more advanced, which is a reason to hasten migration, in others it is still more clumsy, or lacks features such as dynamic UI scripts. Periodical status_change scripts eg. the year_change (which all in all now takes me two full days each week Tongue in google DB) is also not ready yet, or even rigorously specified.

Emphasizing how much work especially me and Roopatra have done to make the items, lots and buildings lists correct and the world interesting is not needed. Work well done rewards the worker.

In a word, it is our choice to migrate when the new platform fulfils the goals:
- Enables WOW! 1991 experience to the users
- Lessens admin load.

Our Ultima project is milestoned until the end of December with the original release schedule being in the november-december.

With PJ we have spent time in discussing about the architecture of the game. As it is, it has a quite limited number of objects, with the foremost ones being:
Character (PC and playable Corp, but not NPC)
Lot (a customizable subdivision of chapelry, which in turn is a fixed area inside a borough)
Borough (map grid unit in global map)
Building (an economic pool share generator, technically a link list of resources located on a lot)
Item (everything else with very variable characteristics from NPC to shares of stock, coins and consumables)

We have devised that the way to most quickly open the game up to programmers, even for those with limited skills in particular technologies. With such a limited number of objects to be handled, we are making the command line to be quite handy for instant actions. There have been talks about resident batch files triggered by the changes in global variables as well, making it possible for instance to have a command batch file that is automatically called to update the King's Coinshop prices based on the change in gold_midprice. And especially that this is not done in a hardcode privileged way but a way that enables anyone to do the same, as we already saw in the Google DB.

Then we will build an API as well, which has a somewhat different mode of operation and purposes.

The graphic/music/UI design is a task that consumes a lot of resources, and is for many reasons best to do in a distributed way. Having the rights management in place, this can be completely crowdsourced (sandbox), which has of course been the plan all along.


More commands/routines to be specified:
(Difference of a command and a routine here is that routine may not be called directly from the command line regardless of the permissions, but in practice there is no big difference)

These are all admin-level commands, which can be used as part of the game scripts (signup of new player, year_change), building editor interface, IC conversion to items, etc.

NEWCHAR needed_parameters


NEWBUILDING needed_parameters


NEWITEM needed_parameters
makes a new item (note: "item" may have any number of instances 0...N)

CREATE item_id new_owner amount
adds the amount of instances of item_id to new_owner and increases the number of "made" of item_id.

(Chapelries cannot be created because they are defined as subdivisions of a Borough. Boroughs cannot technically be created since they always exist at their gridpoints. If they are urbanized, ie become a part of CryptoTown or another town, they are added by the dev as a toggle_urban=1 action. Since urban land always belongs to lots, they cannot be created either. Zoning happens in a different graphic editor, it would require a lot of commands to be able to make it cli and nobody would use it anyway.)

DIVIDEND payer_char_id recipient_item_id dividend_item_id amount
Dividend is used to give the owners of recipient_item_id a bonus in the form of amount*dividend_item_id.
Normal use case: DIVIDEND 87 S-RW M 400000   // RWWC gives 400,000 m dividend to its own stock.

note: it is possible that in case of non-monetary dividends, several recipient_item_id is required to get one dividend_item_id, for instance the current script gives new IC based on new CUL as follows (note pseudocode, this is not a valid command - NewCUL is not an item_id):
DIVIDEND New NewCUL IC1606 0.333
therefore the amount does not need to be an integer, and command should floor the amount actually given, down to the nearest integer.



UI features/admin tools:
(there are different "admin" ranks, with some of the current admins dropped out of all of them since the manual entry of stuff is not needed as much as before, then at least BI/sheriff admin for access to land zoning (given to all who have a chapelry), general admin for all kinds of needs and technical admin for overseeing the year_changes etc critical stuff where things might happen despite and because of automatization).


TBD
legendary
Activity: 1750
Merit: 1036
Facts are more efficient than fud
Test started 22.07 (10.07pm)

TEST: "CANCELALL"

commands: buy mead 1 1
                buy mead 10 100
                buy mead 999 9,999
(all worked as expected)

commands: sell mead 100 12,000
                sell mead 99 50,000
                sell mead 2 99,999
(all worked as expected)

command: cancelall mead
command results: Your asks and bids are cancelled
(worked as expected)

commands: sell mead 1 2
                sell mead 1 3
(all worked as expeceted)

command: buy mead 4 1
(worked as expected)

command: buy w1600 9 99
(worked as expected)

command: cancelall mead w1600
command results: Your asks and bids are removed
(removed mead bid and asks. The w1600 bid remained. I reversed the item order in the command and it removed the w1600 bid--so it only removes the first item's orders and disregards the second--this seems to be a quality result once understood.

suggestions:

--have a VIEW ALL ITEMS link on the item page--makes navigation more efficient.

--a cancelall "all" command would be nice to remove all items bids.

test ended 22.17 (10.33pm) 26 minutes
hero member
Activity: 649
Merit: 500
Can somebody please verify that my specification (upthread) concerning the matching engine is correct? Please!


start 15:28

Quote
- All Items can be traded, except ones that have Untradable=1 in the ITEMS. ("M" are not tradable due to being the currency to be traded with; "CUL" is forbidden to trade, and some immovable objects properly change owner with the Lot only.)

One can sell/buy CULture/moneretos/The Obelisk/etc

char1 (seller):
My balance: 100,209,970
Owned Items of CUL: 55

char2 (buyer):
My balance 314,428,699
Owned Items of CUL 35

char1:
command: sell CUL 20 10mil
result: New ask added for 20 units of cul at a limit price of 10000000.

char2:
command: buy CUL 20 10mil
result Bought 20 units of cul at 10000000 m/unit, for a total of 200000000m.

char1 (seller):
My balance: 300,209,970
Owned Items of CUL: 35

char2 (buyer):
My balance 114,428,699
Owned Items of CUL 55

char1:
command: sell M 10 10mil
results: New ask added for 10 units of m at a limit price of 10000000.

char2
command: buy M 10 10mil
results: Bought 10 units of m at 10000000 m/unit, for a total of 100000000m.
command: buy BFS-2 1 1
result: New bid added for 1 units of bfs-2 at a limit price of 1.

Quote
- Gold, silver and stone are not tradable as such. They are embedded in the items that can be traded (STO1...STO9 are items that all include 1 stone, so can be thought as "stone in Borough #"). Gold objects are always trading with their gold value included. Therefore, a 1,500 CKG bowl that could have cost 15 mil (p.o.) a while ago, would now be 1,115 mil (15 mil item premium on top of 1,100 mil worth of gold).

OK- Was unable to buy gold, silver or stone not embeded in some item
When buying gold/silver item the CKG/CKS belonging to each char was updated accordingly

Quote
- There is a command line for quick and accurate entering of buy and sell commands. It is a text box that can also be used to copy-paste the commands in text lines format in bulk. If such a batch is entered, it evaluates from the first line, one by one.

OK - Copied the bellow orders to the box and they were executed successfully

sell MEAD 1 20
sell MEAD 1 200
sell MEAD 1 201

Quote
- The syntax for entering buy and sell offers and other commands is as follows (item_id means both item_id and lot_id, as they share the idspace; in GIVE, the recipient may be either specified by his shortname (max 12 alphanumerics, case matters) or char_id (a number of max a few digits) - these also have a common idspace):

BUY item_id max_quantity (max_price) -> If you don't specify the max_price it assumes 0.

char1 (buyer)
My balance 400,205,930
Owned Items of BEER 0

char2 (seller)
My balance 14,432,709
Owned Items of BEER 223

char2:
command: sell beer 3 10
results: New ask added for 3 units of beer at a limit price of 10.

char1:
command: buy beer 3
results: New bid added for 3 units of beer at a limit price of 0.


SELL item_id max_quantity (min_price) -> If you don't specify the min_price bad things happen

char1 (buyer)
My balance 400,205,930
Owned Items of BEER 0

char2 (seller)
My balance 14,432,739
Owned Items of BEER 223

char1:
command: buy beer 10 500
results: New bid added for 10 units of beer at a limit price of 500.

char2:
command: sell beer 10
results: Sold 10 units of beer at 0 m/unit, for a total of 0m.

char1 (buyer)
My balance 400,205,930
Owned Items of BEER -10 (minus TEN)

char2 (seller)
My balance 14,432,739
Owned Items of BEER 230 <- wrong

GIVE item_id quantity recipient [char_id OR short_name] - WORKS AS INTENDED

char2:
command:give beer 10 91
result: 10 units of beer given to Angus.
command:give beer 10 Angus
result: 10 units of beer given to Angus.

char1:
command:give beer 10 91
result: 10 units of beer given to Angus. -> Owned items do not change - OK

CONSUME item_id quantity - Mechanism works as intended but there are no restrictions as to which items can be consumed

command: consume beer 10
result: 10 units of beer consumed.
Owned items updated

command: consume COO-1 1 <- this is a bronze torque
result: 1 units of coo-1 consumed.

TRANSFER item_id quantity giver recipient - not tested

End 16:36
hero member
Activity: 649
Merit: 500
START - 10:25

8. It would be useful if the results showed the results for each trade/order placement.

a) When you sell smt the quantity increases and the deal is made for the price you command instead of the prices of the order book.
  
char1 (seller):
My balance: 100,235,570
Owned Items of MEAD: 532

char2: (buyer)
My balance: 314,403,139
Owned Items of MEAD: 280

1 bid in orderbook of 20 MEAD @ 200
command:sell MEAD 100 100
results:New ask added for 80 units of mead at a limit price of 100.
^ Should also show the trade that was made
ex:
Sold sold 1 mead for 200 total 200
New ask added for 80 units of mead at a limit price of 100.

char1 (seller):
My balance 100,237,570 -> +2000m should be 4000
Owned Items of MEAD 552 -> +20 should be -20

char2: (buyer):
My balance 314,401,139 -> -2000 should be -4000
Owned Items of MEAD 260 -> -20 should be +20

b) When buying the accounting is correct

char2 asks:
10 MEAD @ 100
10 MEAD @ 150
10 MEAD @ 200

char1 (buyer):
My balance 100,237,570
Owned Items of MEAD 552

char2 (seller):
My balance 314,401,139
Owned Items of MEAD 260

char1:
command: buy MEAD 50 500
results: New bid added for 20 units of mead at a limit price of 500.

char1:
My balance 100,233,070 -> -4500 OK
Owned Items of MEAD 582 -> +30 OK

char2:
My balance 314,405,639 -> +4500 OK
Owned Items of MEAD 230 -> -30 OK

c1) Multiple command executed, only shows results of last execution.
   When buying from self no changes in m or item - OK


char1:
My balance 100,233,070
Owned Items of MEAD 582

char1:
command:
sell MEAD 100 1000
sell MEAD 100 2000
sell MEAD 100 3000
results:
New ask added for 100 units of mead at a limit price of 3000. <- should show all the asks added

char1:
command: buy MEAD 500 5000
results: New bid added for 200 units of mead at a limit price of 5000.

char1:
My balance 100,233,070 -> no change OK
Owned Items of MEAD 582 -> no change OK

c2)
char1 buy orders
200 MEAD @ 5000
20 MEAD @ 500

command:sell MEAD 300 1
New ask added for 80 units of mead at a limit price of 1.

My balance 100,233,070 - no change OK
Owned Items of MEAD 582 - no change OK

TEST ENDED - 10:57
Pages:
Jump to: