Commit Graph

961 Commits

Author SHA1 Message Date
Crypto City
29fa6c7222 wood can now be chopped into firewood 2020-10-17 23:30:30 +00:00
Crypto City
7b51ad56bc WIP - mortgages 2020-10-17 23:29:26 +00:00
Crypto City
f7bd04fc12 remove custom item amount field, it is now redundant
since we track supply for all items
2020-10-17 23:29:26 +00:00
Crypto City
9586a32958 WIP - mortgages 2020-10-17 23:29:26 +00:00
Crypto City
b033e75db0 add more user data space to custom items 2020-10-17 23:28:43 +00:00
Crypto City
5710bb74dd WIP - scripts 2020-10-17 23:28:43 +00:00
Lee Clagett
08eb0949f3 Change to more efficient allocation strategy in byte_stream 2020-10-13 15:10:54 +00:00
Lee Clagett
249eae5f4a Allow byte_stream->byte_slice conversion to shrink unused buffer space 2020-10-13 15:09:18 +00:00
xiphon
a12a8174e0 Dandelion++: skip desynced peers in stem phase 2020-10-12 13:44:06 +00:00
Lee Clagett
7414e2bac1 Change epee binary output from std::stringstream to byte_stream 2020-10-10 15:28:40 +00:00
TheCharlatan
db70af1bbc
Unit Tests: Remove block reward upper bound size checks
Tests running after being compiled with `make debug-test` failed with
```
[  FAILED  ] block_reward_and_current_block_weight.fails_on_huge_median_size
[  FAILED  ] block_reward_and_current_block_weight.fails_on_huge_block_weight
```

With the introduction of the patch in
be82c40703 (diff-1a57d4e6013984c420da98d1adde0eafL113)
the assertions checking the weight of the median and current block
against a size limit were removed. Since the limit is now enforced by a
long divisor and a uint64_t type, checking in a separate test makes
little sense, so they are removed here.
2020-10-03 02:32:17 +02:00
Crypto City
81ac18db00 rewrite city cost function 2020-09-28 21:09:07 +00:00
Crypto City
31e74fba63 tests: fix a few tests after recent changes 2020-09-28 21:09:07 +00:00
Crypto City
029375c6dc unit_tests: fix influence tests from military after related changes 2020-09-24 19:29:55 +00:00
Crypto City
b7c431c15e remove cost from buy_land command 2020-09-24 19:29:55 +00:00
Crypto City
967ec1957a unit_tests: add another better test for harvest overflow 2020-09-17 02:30:44 +00:00
Crypto City
d8a3c29b67 cc: increase heating requirements a fair bit 2020-09-17 02:30:44 +00:00
Crypto City
a389011f3c add new plant breeding discoveries 2020-09-17 02:30:44 +00:00
Crypto City
fdd27879f1 add merge mining with monero 2020-09-17 02:30:43 +00:00
moneromooo-monero
f11531d046 add_aux_pow now adds aux hashes at fixed slots in the aux merkle tree
To protect against mining multiple blocks of a chain with only one PoW
2020-09-16 22:55:06 +00:00
moneromooo-monero
8cf2bb107e New add_aux_pow RPC to support merge mining 2020-09-13 22:16:07 +00:00
luigi1111
ee0b02d0db
Merge pull request #6757
6a37da8 threadpool: guard against exceptions in jobs, and armour plating (moneromooo-monero)
2020-09-03 12:25:59 -05:00
Crypto City
9c61486243 unit_tests: fix failure due to reading uninitialized city data 2020-09-02 23:07:03 +00:00
Crypto City
b648ed500a new resilient soil city specialization, fix nutrients recovery, add tests 2020-09-02 23:07:03 +00:00
Crypto City
c29d308510 cc: protect against integer overflow in intermediate calculations 2020-09-02 23:07:03 +00:00
Crypto City
3714a4e5b0 fix unbound unit tests link error 2020-09-02 23:07:03 +00:00
Crypto City
7a1ba041e8 tests: fix tests failures now that blockchain init queries cities 2020-09-02 23:07:03 +00:00
moneromooo-monero
6a37da837e
threadpool: guard against exceptions in jobs, and armour plating
Those would, if uncaught, exit run and leave the waiter to wait
indefinitely for the number of active jobs to reach 0
2020-09-01 14:33:33 +00:00
Crypto City
40d58c0c9d add dependencies where appropriate to make -jN work 2020-08-29 12:17:11 +00:00
Alexander Blair
44cd8a13ec
Merge pull request #6769
b641e0a2c Add clear method to byte_stream (Lee Clagett)
2020-08-27 12:05:16 -07:00
Sarang Noether
641b08c920 CLSAG optimizations 2020-08-27 12:44:04 +00:00
moneromooo-monero
82ee01699c
Integrate CLSAGs into monero
They are allowed from v12, and MLSAGs are rejected from v13.
2020-08-27 12:44:04 +00:00
moneromooo-monero
8cd1d6df8f
unit_tests: add ge_triple_scalarmult_base_vartime test 2020-08-27 12:44:01 +00:00
Alexander Blair
bad5d8d6f0
Merge pull request #6690
7175dcb10 replace most boost serialization with existing monero serialization (moneromooo-monero)
2020-08-27 02:54:30 -07:00
Crypto City
3335f8d14f create collectible coins for player count and city levels 2020-08-25 15:27:16 +00:00
Crypto City
61844a1f62 start the year a bit earlier so that we can farm right away 2020-08-25 13:20:15 +00:00
Crypto City
bb9bd2ce50 store command nonce in game events log
and store a nonce in all commands (except none) now
2020-08-25 13:20:14 +00:00
Crypto City
c688079acb commands can now be cancelled
if they're not mined yet, or only partially matched trades
2020-08-25 13:20:14 +00:00
Crypto City
61aa85ad3b add collectible coins 2020-08-21 18:33:02 +00:00
Lee Clagett
b641e0a2c0 Add clear method to byte_stream 2020-08-17 21:30:34 -04:00
luigi1111
765db1ae7a
Revert "Use domain-separated ChaCha20 for in-memory key encryption"
This reverts commit 921dd8dde5.
2020-08-17 14:08:59 -05:00
moneromooo-monero
7175dcb107
replace most boost serialization with existing monero serialization
This reduces the attack surface for data that can come from
malicious sources (exported output and key images, multisig
transactions...) since the monero serialization is already
exposed to the outside, and the boost lib we were using had
a few known crashers.

For interoperability, a new load-deprecated-formats wallet
setting is added (off by default). This allows loading boost
format data if there is no alternative. It will likely go
at some point, along with the ability to load those.

Notably, the peer lists file still uses the boost serialization
code, as the data it stores is define in epee, while the new
serialization code is in monero, and migrating it was fairly
hairy. Since this file is local and not obtained from anyone
else, the marginal risk is minimal, but it could be migrated
later if needed.

Some tests and tools also do, this will stay as is for now.
2020-08-17 16:23:58 +00:00
Alexander Blair
10ad0d7eb2
Merge pull request #6718
85efc88c1 Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test (koe)
2020-08-16 12:53:50 -07:00
Alexander Blair
01b512f3a9
Merge pull request #6716
76c16822d wallet2_api: implement runtime proxy configuration (xiphon)
2020-08-16 12:52:21 -07:00
Alexander Blair
a08df6eb1b
Merge pull request #6603
4e2377995 Change ZMQ-JSON txextra to hex and remove unnecessary base fields (Lee Clagett)
2020-08-16 12:43:38 -07:00
Alexander Blair
009ca6fcd3
Merge pull request #6601
98c151ecb Optimize ZMQ-JSON vector reading; GetBlocksFast reads 24%+ faster (Lee Clagett)
60627c9f2 Switch to insitu parsing for ZMQ-JSON; GetBlocksFast reads 13%+ faster (Lee Clagett)
fe96e66eb Fix pruned tx for ZMQ's GetBlocksFast (Lee Clagett)
2020-08-16 12:43:11 -07:00
Alexander Blair
6d29ee6c52
Merge pull request #6493
921dd8dde Use domain-separated ChaCha20 for in-memory key encryption (Sarang Noether)
2020-08-16 12:39:59 -07:00
Alexander Blair
13549d590e
Merge pull request #6329
6bfcd3101 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. (Sarang Noether)
2020-08-16 12:37:43 -07:00
Crypto City
be0b26ef25 add item groups 2020-08-15 15:12:35 +00:00
Lee Clagett
4e2377995d Change ZMQ-JSON txextra to hex and remove unnecessary base fields 2020-08-14 23:01:00 +00:00
Lee Clagett
fe96e66ebe Fix pruned tx for ZMQ's GetBlocksFast 2020-08-14 19:46:33 +00:00
Sarang Noether
921dd8dde5 Use domain-separated ChaCha20 for in-memory key encryption 2020-08-09 19:11:54 -04:00
Sarang Noether
6bfcd31015 Updates InProofV1, OutProofV1, and ReserveProofV1 to new V2 variants that include all public proof parameters in Schnorr challenges, along with hash function domain separators. Includes new randomized unit tests. 2020-08-09 18:42:15 -04:00
Alexander Blair
c108c5e2f0
Merge pull request #6354
67ade8005 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 (Lee Clagett)
2020-08-09 06:42:49 -07:00
Crypto City
0f364a96d7 cc: prevent building too close to the edges of the world 2020-08-05 14:09:06 +00:00
Crypto City
fb5dd77afa Farming 2020-08-05 14:09:06 +00:00
Crypto City
2a1c79920d speedup terrain generation 2020-08-01 17:05:19 +00:00
Crypto City
031d32d08e cc: make cities grow in cost more slowly 2020-07-26 10:31:37 +00:00
Crypto City
34856d0808 keep track of the item supply 2020-07-25 22:43:58 +00:00
Crypto City
b268c5b8c7 add elevation bonus 2020-07-25 22:43:58 +00:00
Crypto City
c598cfec0a remove building within range of resource generators constraint 2020-07-25 22:43:58 +00:00
Crypto City
664d56f520 Height map 2020-07-25 22:43:53 +00:00
Crypto City
6918004419 cc: fix temperature to heating function 2020-07-24 15:36:50 +00:00
Crypto City
ac171bf477 cc: rewrite potential system and add more potentials 2020-07-24 15:36:50 +00:00
koe
85efc88c1e Fix overflow issue in epee:misc_utils::rolling_median_t and median(), with unit test 2020-07-23 03:36:05 -05:00
xiphon
76c16822d0 wallet2_api: implement runtime proxy configuration 2020-07-20 13:45:12 +00:00
Alexander Blair
3ba6c7fd30
Merge pull request #6516
8656a8c9f remove double includes (sumogr)
2020-07-19 03:34:28 -07:00
Alexander Blair
a0d179e528
Merge pull request #6512
5ef0607da Update copyright year to 2020 (SomaticFanatic)
2020-07-19 03:32:59 -07:00
luigi1111
35e2520115
Merge pull request #6559
15538f7 ByteSlice: Fix persisting ptr to std::moved SSO buffer (Doy-lee)
2020-07-08 17:07:50 -05:00
Crypto City
8c249305f7 unit_tests: don't link to urho3d 2020-06-24 01:06:54 +00:00
Crypto City
23c813cf45 add city specializations 2020-06-14 23:43:30 +00:00
Crypto City
396157b032 Merge remote-tracking branch 'origin/master' into cc 2020-05-30 18:55:11 +00:00
Crypto City
3af586f748 unit_tests: fix missing roles in influence test 2020-05-29 23:20:51 +00:00
Crypto City
c22e54b850 unlock_time is now valid only for coinbase txes 2020-05-29 23:20:50 +00:00
Crypto City
828bb1ba41 allow destroying a flag 2020-05-29 23:20:50 +00:00
Crypto City
0cc8c0c675 game balance updates after all the recent changes 2020-05-29 23:20:50 +00:00
Crypto City
d2949eb3ff Change the address prefix from CC to TF 2020-05-29 23:20:49 +00:00
Crypto City
2f77fc4051 invitations 2020-05-29 23:20:49 +00:00
Crypto City
98ad361d8a firefighting 2020-05-29 23:20:45 +00:00
Crypto City
6a18101b1a add invitation system 2020-05-26 16:22:42 +00:00
Crypto City
b333b92415 move cc_badge.h away from blockchain_db.h 2020-05-26 16:22:42 +00:00
Doyle
15538f7e3f ByteSlice: Fix persisting ptr to std::moved SSO buffer
The Bug:
1. Construct `byte_slice.portion_` with `epee::span(buffer)` which copies a pointer to the SSO buffer to `byte_slice.portion_`
2. It constructs `byte_slice.storage_` with `std::move(buffer)` (normally this swap pointers, but SSO means a memcpy and clear on the original SSO buffer)
3. `slice.data()` returns a pointer from `slice.portion_` that points to the original SSO cleared buffer, `slice.storage_` has the actual string.
2020-05-20 10:13:58 +10:00
Lee Clagett
67ade80055 Add randomized delay when forwarding txes from i2p/tor -> ipv4/6 2020-05-15 07:57:35 +00:00
Lee Clagett
29e563bb1e Fixed bugs for take_slice and byte_stream->byte_slice 2020-05-12 01:26:37 -04:00
sumogr
8656a8c9ff remove double includes 2020-05-11 13:53:17 +00:00
SomaticFanatic
5ef0607da6 Update copyright year to 2020
Update copyright year to 2020
2020-05-06 22:36:54 -04:00
Lee Clagett
e5214a2ca2 Adding ZMQ/Pub support for txpool_add and chain_main events 2020-05-04 02:06:35 +00:00
Crypto City
06472348cf WIP - palettes 2020-04-28 15:43:03 +00:00
Crypto City
4863f4684e unit_tests: fix building settings unit test 2020-04-23 13:16:35 +00:00
Crypto City
6ad068d938 make city levels somewhat easier to achieve 2020-04-22 15:14:48 +00:00
Crypto City
3a0571d578 give some slight share/production edge with building age
This should make it somewhat more appealing to build an existing building
rather then buy your own land and build a new building on it, given there
is no land scarcity.
2020-04-21 17:41:07 +00:00
luigi1111
06c81b6527
Merge pull request #6359
f9441c5 Fixed string_ref usage bug in epee::from_hex::vector (vtnerd)
2020-04-21 08:38:21 -05:00
Crypto City
326f4bc3f2 allow repairing many flags in one command 2020-04-15 17:51:31 +00:00
Crypto City
3b87070a5d add hunt system 2020-04-13 17:23:54 +00:00
Crypto City
c7c3944fb0 unit_tests: fix badge score unit tests 2020-04-11 19:11:47 +00:00
Crypto City
bf738e7524 cc: extend the db to store all game events, not just game update ones 2020-04-11 19:02:00 +00:00
Lee Clagett
c26c93019a Add byte_stream for zero-copy serialization, and add support in ZMQ-JSON. 2020-04-11 04:12:11 +00:00
luigi1111
8185054db7
Merge pull request #6451
4ed60b6 Bulletproofs: verification speedup (SarangNoether)
2020-05-02 15:14:41 -05:00
luigi1111
a5cc613a68
Merge pull request #6460
f8b1480 unit_tests: fix gcc+ warning (sumogr)
2020-05-01 15:50:19 -05:00
Sumo Gr
f8b1480f95
unit_tests: fix gcc+ warning 2020-04-18 18:04:20 +03:00
Sarang Noether
4ed60b626a Bulletproofs: verification speedup 2020-04-14 20:31:30 -04:00
Crypto City
3c2b07fd15 game: display actual badge counts in badge leaderboard 2020-04-10 01:51:27 +00:00
Crypto City
a0b6a6e8aa add a dice roll command, for use in story/roleplaying 2020-04-10 01:51:27 +00:00
Crypto City
9153c6f110 Add editable player profile 2020-04-08 11:04:01 +00:00
Crypto City
287fd9cfd1 Add player attributes for storytelling/role playing purposes 2020-04-08 00:15:51 +00:00
Crypto City
3891353d7e add a new command to destroy owned items 2020-04-04 23:41:15 +00:00
luigi1111
d1f3d3376d
Merge pull request #6381
e719760 Fix receive order leakage with tx fluffing (vtnerd)
2020-04-04 13:12:31 -05:00
luigi1111
5757d99208
Merge pull request #6361
68a6507 Fixed bug in ZMQ JSON-RPC method field (vtnerd)
2020-04-04 13:01:15 -05:00
luigi1111
0150a480fd
Merge pull request #6357
42a7a4d daemon: auto public nodes - cache and prioritize most stable nodes (xiphon)
2020-04-04 12:59:23 -05:00
luigi1111
cfc0f4a7fa
Merge pull request #6351
81c5943 Remove temporary std::string creation in some hex->bin calls (vtnerd)
5fcc23a Move hex->bin conversion to monero copyright files and with less includes (vtnerd)
3387f0e Reduce template bloat in hex->bin for ZMQ json (vtnerd)
2020-04-04 12:55:02 -05:00
luigi1111
bf70696a85
Merge pull request #6346
dbfa4f8 unit_tests: fix missing test names (xiphon)
2020-04-04 12:50:17 -05:00
luigi1111
c4f75fe898
Merge pull request #6339
c61abf8 remove empty statements (shopglobal)
2020-04-04 12:47:31 -05:00
luigi1111
292e2d8f28
Merge pull request #6335
0078ce7 wipeable_string: split - treat CR, LF and Tabs as separators (xiphon)
2020-04-04 12:42:50 -05:00
Crypto City
8f794a4a1e add temperature and building heating requirements 2020-04-03 15:43:36 +00:00
Crypto City
d7fa5676fe cc: special events now have a min duration 2020-04-03 15:43:35 +00:00
Crypto City
b3c3647cb9 add food consumption 2020-04-03 15:43:35 +00:00
Crypto City
beceb3ce79 cc: bump agricultural building min size requirements 2020-04-03 15:43:35 +00:00
Lee Clagett
da99157462 Use byte_slice for sending zmq messages - removes data copy within zmq 2020-04-03 01:56:17 +00:00
luigi1111
096e2135dd
Merge pull request #6214
054b4c7 protocol: request txpool contents when synced (moneromooo-monero)
2020-03-31 13:32:55 -05:00
Lee Clagett
f9441c5759 Fixed string_ref usage bug in epee::from_hex::vector 2020-03-30 16:53:34 +00:00
Lee Clagett
0c29e17581 Fix network unit tests after epee changes 2020-03-28 13:30:22 -04:00
Alexander Blair
7d4a93fab3
Merge pull request #6285
d0641b42 net: fix incorrect less operator for top/i2p addresses (Aaron Hook)
2020-03-27 12:23:00 -07:00
Lee Clagett
02d887c2e5 Adding Dandelion++ support to public networks:
- New flag in NOTIFY_NEW_TRANSACTION to indicate stem mode
  - Stem loops detected in tx_pool.cpp
  - Embargo timeout for a blackhole attack during stem phase
2020-03-26 15:01:30 +00:00
moneromooo-monero
054b4c7f41
protocol: request txpool contents when synced
A newly synced Alice sends a (typically quite small) list of
txids in the local tpxool to a random peer Bob, who then uses
the existing tx relay system to send Alice any tx in his txpool
which is not in the list Alice sent
2020-03-22 16:03:31 +00:00
Crypto City
5c198dd7d6 allow resizing flags (when empty) 2020-03-21 16:21:35 +00:00
Aaron Hook
aa93e38862 p2p: remove old debug commands 2020-03-20 22:09:44 -07:00
Crypto City
39163c168a Event badges can now be awarded after creation 2020-03-20 19:27:51 +00:00
Crypto City
bdb53f11b6 blockchain_db: remove buggy and unused set_cc_account_name 2020-03-20 19:27:51 +00:00
Crypto City
2882f6bc80 badges 2020-03-20 19:27:51 +00:00
Crypto City
0d413cf164 merge cc_account data into a structure 2020-03-20 19:27:51 +00:00
Crypto City
8d3fbb1727 Add ignore machinery 2020-03-20 19:27:51 +00:00
Crypto City
a6b8da5f0e add player defined custom items 2020-03-20 19:27:51 +00:00
Alexander Blair
820ab9fdea
Merge pull request #6273
0f78b06e Various improvements to the ZMQ JSON-RPC handling: (Lee Clagett)
2020-03-12 01:13:49 -07:00
Lee Clagett
e719760253 Fix receive order leakage with tx fluffing 2020-03-10 22:30:07 -04:00
Lee Clagett
5fcc23ae0a Move hex->bin conversion to monero copyright files and with less includes 2020-03-09 05:23:59 +00:00
Lee Clagett
0f78b06e8c Various improvements to the ZMQ JSON-RPC handling:
- Finding handling function in ZMQ JSON-RPC now uses binary search
  - Temporary `std::vector`s in JSON output now use `epee::span` to
    prevent allocations.
  - Binary -> hex in JSON output no longer allocates temporary buffer
  - C++ structs -> JSON skips intermediate DOM creation, and instead
    write directly to an output stream.
2020-03-05 14:20:56 +00:00
Alexander Blair
944e8a4542
Merge pull request #6220
a9bdc6e4 Improved performance for epee serialization: (Lee Clagett)
2020-02-28 19:45:31 -08:00
Alexander Blair
e7997cd62a
Merge pull request #6202
02b80513 unit_tests: remove invalid bulletproofs unit test (moneromooo-monero)
2020-02-28 19:33:21 -08:00
Crypto City
10f48689f8 propagating fire special event 2020-02-28 19:37:11 +00:00
xiphon
42a7a4dd32 daemon: auto public nodes - cache and prioritize most stable nodes 2020-02-28 08:06:43 +00:00
Crypto City
6c5570b814 special events 2020-02-23 01:31:27 +00:00
Crypto City
30e260511f unit_tests: add a test for quadtree intersection 2020-02-22 14:17:21 +00:00
Crypto City
52da390658 add town levels (aesthetic only for now) and use weighted shares for subsidy 2020-02-22 14:17:21 +00:00
Crypto City
6d4f2a20bc cc: make additional cities scale on 2^n, not 10^n 2020-02-22 14:17:21 +00:00
Crypto City
11c5ca898b We can now remove materials already on the blockchain 2020-02-22 14:17:21 +00:00
Crypto City
13040bf4f4 cc: bump min buy size a bit 2020-02-22 14:17:20 +00:00
xiphon
dbfa4f84ee unit_tests: fix missing test names 2020-02-18 23:56:21 +00:00
Interchained
c61abf87c0 remove empty statements
Cleaning up a little around the code base.
2020-02-17 11:55:15 -05:00
Crypto City
c9752a0b3d some s/monero/townforge/ where appropriate 2020-02-14 13:19:03 +00:00
xiphon
0078ce7fac wipeable_string: split - treat CR, LF and Tabs as separators 2020-02-12 21:16:07 +00:00