Ecoer Logo

@beeheap

25

Blockchain, cryptocurrency & spreadsheets

steemit.com/@beeheap
VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS0.00%
Net Worth
0.034USD
STEEM
0.000STEEM
SBD
0.000SBD
Effective Power
5.001SP
├── Own SP
0.633SP
└── Incoming Deleg
+4.368SP

Detailed Balance

STEEM
balance
0.000STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.000STEEM
STEEM POWER
Own SP
0.633SP
Delegated Out
0.000SP
Delegation In
4.368SP
Effective Power
5.001SP
Reward SP (pending)
0.023SP
SBD
sbd_balance
0.000SBD
sbd_conversions
0.000SBD
sbd_market_balance
0.000SBD
savings_sbd_balance
0.000SBD
reward_sbd_balance
0.000SBD
{
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "reward_steem_balance": "0.000 STEEM",
  "vesting_shares": "1031.443596 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "7112.216210 VESTS",
  "sbd_balance": "0.000 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

namebeeheap
id331200
rank577,376
reputation10138066
created2017-08-24T07:56:45
recovery_accountsteem
proxyNone
post_count4
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2019-10-11T10:43:33
last_root_post2019-10-11T10:43:33
last_vote_time2021-05-04T14:37:15
proxied_vsf_votes0, 0, 0, 0
can_vote1
voting_power0
delayed_votes0
balance0.000 STEEM
savings_balance0.000 STEEM
sbd_balance0.000 SBD
savings_sbd_balance0.000 SBD
vesting_shares1031.443596 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares7112.216210 VESTS
reward_vesting_balance38.829706 VESTS
vesting_balance0.000 STEEM
vesting_withdraw_rate0.000000 VESTS
next_vesting_withdrawal1969-12-31T23:59:59
withdrawn0
to_withdraw0
withdraw_routes0
savings_withdraw_requests0
last_account_recovery1970-01-01T00:00:00
reset_accountnull
last_owner_update1970-01-01T00:00:00
last_account_update2025-01-05T15:12:12
minedNo
sbd_seconds0
sbd_last_interest_payment1970-01-01T00:00:00
savings_sbd_last_interest_payment1970-01-01T00:00:00
{
  "id": 331200,
  "name": "beeheap",
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM7bChezSnwvjinzrUeW82RoZc5fXu26Dr8UD6vHqZB2aQhwAUWS",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM8N1UTTyh4vZJvh7yBTtp4qfZruwsc1CSfbuQNjUoX8HzutkKFh",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM7oNdCbfcNbLFJDJ8sKTvefXzmwzwGSZjrsAooXgGtcBzLTbdiL",
        1
      ]
    ]
  },
  "memo_key": "STM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq",
  "json_metadata": "{\"profile\":{\"location\":\"the Netherlands\",\"profile_image\":\"https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg\",\"name\":\"Koen Rijnsent\",\"about\":\"Blockchain, cryptocurrency & spreadsheets\",\"website\":\"https://github.com/krijnsent/\"}}",
  "posting_json_metadata": "{\"profile\":{\"profile_image\":\"https://cdn.steemitimages.com/DQmRAmDzkbbPMSZKnmaUsCBqH67D3MtB9PTfMCaF7tCSAWs/egg.svg\",\"name\":\"Re Movedaccount\",\"version\":2}}",
  "proxy": "",
  "last_owner_update": "1970-01-01T00:00:00",
  "last_account_update": "2025-01-05T15:12:12",
  "created": "2017-08-24T07:56:45",
  "mined": false,
  "recovery_account": "steem",
  "last_account_recovery": "1970-01-01T00:00:00",
  "reset_account": "null",
  "comment_count": 0,
  "lifetime_vote_count": 0,
  "post_count": 4,
  "can_vote": true,
  "voting_manabar": {
    "current_mana": "8143659806",
    "last_update_time": 1779055044
  },
  "downvote_manabar": {
    "current_mana": 2035914951,
    "last_update_time": 1779055044
  },
  "voting_power": 0,
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "sbd_balance": "0.000 SBD",
  "sbd_seconds": "0",
  "sbd_seconds_last_update": "1970-01-01T00:00:00",
  "sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_sbd_balance": "0.000 SBD",
  "savings_sbd_seconds": "0",
  "savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
  "savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_withdraw_requests": 0,
  "reward_sbd_balance": "0.000 SBD",
  "reward_steem_balance": "0.000 STEEM",
  "reward_vesting_balance": "38.829706 VESTS",
  "reward_vesting_steem": "0.023 STEEM",
  "vesting_shares": "1031.443596 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "7112.216210 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "withdrawn": 0,
  "to_withdraw": 0,
  "withdraw_routes": 0,
  "curation_rewards": 0,
  "posting_rewards": 0,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "witnesses_voted_for": 0,
  "last_post": "2019-10-11T10:43:33",
  "last_root_post": "2019-10-11T10:43:33",
  "last_vote_time": "2021-05-04T14:37:15",
  "post_bandwidth": 0,
  "pending_claimed_accounts": 0,
  "vesting_balance": "0.000 STEEM",
  "reputation": 10138066,
  "transfer_history": [],
  "market_history": [],
  "post_history": [],
  "vote_history": [],
  "other_history": [],
  "witness_votes": [],
  "tags_usage": [],
  "guest_bloggers": [],
  "rank": 577376
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
steemdelegated 4.368 SP to @beeheap
2026/05/17 21:57:24
delegatorsteem
delegateebeeheap
vesting shares7112.216210 VESTS
Transaction InfoBlock #106140703/Trx dea33271a93107275c62872e7a3b5ec58ec40aad
View Raw JSON Data
{
  "trx_id": "dea33271a93107275c62872e7a3b5ec58ec40aad",
  "block": 106140703,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-17T21:57:24",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "7112.216210 VESTS"
    }
  ]
}
steemdelegated 2.702 SP to @beeheap
2026/05/11 19:11:12
delegatorsteem
delegateebeeheap
vesting shares4400.005805 VESTS
Transaction InfoBlock #105965358/Trx 6a815527a9dd0a8d8ac2029bf561d457292258bd
View Raw JSON Data
{
  "trx_id": "6a815527a9dd0a8d8ac2029bf561d457292258bd",
  "block": 105965358,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-11T19:11:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "4400.005805 VESTS"
    }
  ]
}
steemdelegated 4.375 SP to @beeheap
2026/04/25 21:21:57
delegatorsteem
delegateebeeheap
vesting shares7124.731966 VESTS
Transaction InfoBlock #105508423/Trx 2fdb6518ff493a88d874764362f822864e62b274
View Raw JSON Data
{
  "trx_id": "2fdb6518ff493a88d874764362f822864e62b274",
  "block": 105508423,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-04-25T21:21:57",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "7124.731966 VESTS"
    }
  ]
}
steemdelegated 2.728 SP to @beeheap
2026/01/23 01:45:15
delegatorsteem
delegateebeeheap
vesting shares4441.552624 VESTS
Transaction InfoBlock #102844574/Trx 49657d0f1c58d67fb9765f56f868ea819b7002b7
View Raw JSON Data
{
  "trx_id": "49657d0f1c58d67fb9765f56f868ea819b7002b7",
  "block": 102844574,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-23T01:45:15",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "4441.552624 VESTS"
    }
  ]
}
beeheapreceived 0.024 SP benefactor reward from @abandi
2025/01/12 19:27:33
benefactorbeeheap
authorabandi
permlinkis-there-any-evidence-of-steem-investors-making-huge-profits-20250105t192729
sbd payout0.000 SBD
steem payout0.000 STEEM
vesting payout38.829706 VESTS
Transaction InfoBlock #92064761/Virtual Operation #3
View Raw JSON Data
{
  "trx_id": "0000000000000000000000000000000000000000",
  "block": 92064761,
  "trx_in_block": 4294967295,
  "op_in_trx": 0,
  "virtual_op": 3,
  "timestamp": "2025-01-12T19:27:33",
  "op": [
    "comment_benefactor_reward",
    {
      "benefactor": "beeheap",
      "author": "abandi",
      "permlink": "is-there-any-evidence-of-steem-investors-making-huge-profits-20250105t192729",
      "sbd_payout": "0.000 SBD",
      "steem_payout": "0.000 STEEM",
      "vesting_payout": "38.829706 VESTS"
    }
  ]
}
beeheapupdated their account properties
2025/01/05 15:12:12
accountbeeheap
json metadata
posting json metadata{"profile":{"profile_image":"https://cdn.steemitimages.com/DQmRAmDzkbbPMSZKnmaUsCBqH67D3MtB9PTfMCaF7tCSAWs/egg.svg","name":"Re Movedaccount","version":2}}
extensions[]
Transaction InfoBlock #91858519/Trx bc7bdf3db80aeaf559117eaba6cbc042380186c0
View Raw JSON Data
{
  "trx_id": "bc7bdf3db80aeaf559117eaba6cbc042380186c0",
  "block": 91858519,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-01-05T15:12:12",
  "op": [
    "account_update2",
    {
      "account": "beeheap",
      "json_metadata": "",
      "posting_json_metadata": "{\"profile\":{\"profile_image\":\"https://cdn.steemitimages.com/DQmRAmDzkbbPMSZKnmaUsCBqH67D3MtB9PTfMCaF7tCSAWs/egg.svg\",\"name\":\"Re Movedaccount\",\"version\":2}}",
      "extensions": []
    }
  ]
}
beeheapupdated their account properties
2025/01/05 15:11:48
accountbeeheap
json metadata
posting json metadata{"profile":{"profile_image":"https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg","name":"Re Movedaccount","version":2}}
extensions[]
Transaction InfoBlock #91858511/Trx 8ccb0373d8280a13d8ec19b69b799caf59e99246
View Raw JSON Data
{
  "trx_id": "8ccb0373d8280a13d8ec19b69b799caf59e99246",
  "block": 91858511,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-01-05T15:11:48",
  "op": [
    "account_update2",
    {
      "account": "beeheap",
      "json_metadata": "",
      "posting_json_metadata": "{\"profile\":{\"profile_image\":\"https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg\",\"name\":\"Re Movedaccount\",\"version\":2}}",
      "extensions": []
    }
  ]
}
2025/01/05 15:11:18
parent authorbstiel
parent permlinkre-beeheap-excel-and-vba-development-with-github-20171202t074944492z
authorbeeheap
permlinkre-bstiel-re-beeheap-excel-and-vba-development-with-github-20171211t121837962z
title
bodyEmptied
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #91858501/Trx a33bb29bbf146af50486e4fc3ed00ff719468f62
View Raw JSON Data
{
  "trx_id": "a33bb29bbf146af50486e4fc3ed00ff719468f62",
  "block": 91858501,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-01-05T15:11:18",
  "op": [
    "comment",
    {
      "parent_author": "bstiel",
      "parent_permlink": "re-beeheap-excel-and-vba-development-with-github-20171202t074944492z",
      "author": "beeheap",
      "permlink": "re-bstiel-re-beeheap-excel-and-vba-development-with-github-20171211t121837962z",
      "title": "",
      "body": "Emptied",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/01/05 15:10:51
parent author
parent permlinkvba
authorbeeheap
permlinkexcel-and-vba-development-with-github
titleRemoved article 2
body<html> <p>Removed</p> </html>
json metadata{"app":"steemit/0.2","format":"html"}
Transaction InfoBlock #91858492/Trx 4965e0f0a60ad56855e89f0b4c7d714d96902eea
View Raw JSON Data
{
  "trx_id": "4965e0f0a60ad56855e89f0b4c7d714d96902eea",
  "block": 91858492,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-01-05T15:10:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "vba",
      "author": "beeheap",
      "permlink": "excel-and-vba-development-with-github",
      "title": "Removed article 2",
      "body": "<html>\n<p>Removed</p>\n</html>",
      "json_metadata": "{\"app\":\"steemit/0.2\",\"format\":\"html\"}"
    }
  ]
}
2025/01/05 15:09:27
parent author
parent permlinkmap
authorbeeheap
permlinkcreate-a-fantasy-grid-map-in-excel
titleNo article 1
bodyRemoved
json metadata{"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #91858464/Trx 092640d56585ceab490e4bf00819202a347e5b5c
View Raw JSON Data
{
  "trx_id": "092640d56585ceab490e4bf00819202a347e5b5c",
  "block": 91858464,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-01-05T15:09:27",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "map",
      "author": "beeheap",
      "permlink": "create-a-fantasy-grid-map-in-excel",
      "title": "No article 1",
      "body": "Removed",
      "json_metadata": "{\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
steemdelegated 2.828 SP to @beeheap
2024/12/16 21:05:06
delegatorsteem
delegateebeeheap
vesting shares4605.771821 VESTS
Transaction InfoBlock #91290990/Trx e3bc480a1e4ed1fb50cc98d492bb535e0104dde4
View Raw JSON Data
{
  "trx_id": "e3bc480a1e4ed1fb50cc98d492bb535e0104dde4",
  "block": 91290990,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2024-12-16T21:05:06",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "4605.771821 VESTS"
    }
  ]
}
steemdelegated 2.932 SP to @beeheap
2023/11/13 12:50:36
delegatorsteem
delegateebeeheap
vesting shares4774.905353 VESTS
Transaction InfoBlock #79845260/Trx 7ebb268cf432a039bf65fdf4455e41ed16d040b6
View Raw JSON Data
{
  "trx_id": "7ebb268cf432a039bf65fdf4455e41ed16d040b6",
  "block": 79845260,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2023-11-13T12:50:36",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "4774.905353 VESTS"
    }
  ]
}
steemdelegated 4.736 SP to @beeheap
2023/09/21 19:09:57
delegatorsteem
delegateebeeheap
vesting shares7712.184139 VESTS
Transaction InfoBlock #78344646/Trx d775b8df669d9872b64681aa5e604ed40f5bbcf5
View Raw JSON Data
{
  "trx_id": "d775b8df669d9872b64681aa5e604ed40f5bbcf5",
  "block": 78344646,
  "trx_in_block": 6,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2023-09-21T19:09:57",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "7712.184139 VESTS"
    }
  ]
}
steemdelegated 4.869 SP to @beeheap
2022/11/10 05:38:21
delegatorsteem
delegateebeeheap
vesting shares7928.896434 VESTS
Transaction InfoBlock #69306671/Trx 832b11ee1d8a77901001ba3dd15cc7a5601b2f5c
View Raw JSON Data
{
  "trx_id": "832b11ee1d8a77901001ba3dd15cc7a5601b2f5c",
  "block": 69306671,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-11-10T05:38:21",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "7928.896434 VESTS"
    }
  ]
}
steemdelegated 4.979 SP to @beeheap
2022/03/16 08:37:48
delegatorsteem
delegateebeeheap
vesting shares8108.145408 VESTS
Transaction InfoBlock #62466466/Trx 1e9ccf9ea84130bc2013e65cee79b5be1534c85e
View Raw JSON Data
{
  "trx_id": "1e9ccf9ea84130bc2013e65cee79b5be1534c85e",
  "block": 62466466,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-03-16T08:37:48",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8108.145408 VESTS"
    }
  ]
}
steemdelegated 5.091 SP to @beeheap
2021/08/03 21:54:45
delegatorsteem
delegateebeeheap
vesting shares8290.938631 VESTS
Transaction InfoBlock #56054560/Trx 6619eee81e6ab78f08bed6bbb52c380bb672dffd
View Raw JSON Data
{
  "trx_id": "6619eee81e6ab78f08bed6bbb52c380bb672dffd",
  "block": 56054560,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2021-08-03T21:54:45",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8290.938631 VESTS"
    }
  ]
}
steemdelegated 16.902 SP to @beeheap
2021/07/08 08:59:33
delegatorsteem
delegateebeeheap
vesting shares27523.791067 VESTS
Transaction InfoBlock #55298102/Trx 2b5857cd15482765e9ee87d206487f4bc844648a
View Raw JSON Data
{
  "trx_id": "2b5857cd15482765e9ee87d206487f4bc844648a",
  "block": 55298102,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2021-07-08T08:59:33",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "27523.791067 VESTS"
    }
  ]
}
steemdelegated 17.017 SP to @beeheap
2021/05/04 15:56:12
delegatorsteem
delegateebeeheap
vesting shares27710.805038 VESTS
Transaction InfoBlock #53454188/Trx 80b42083b051e1a494c8fb2d90754df961ab0fd0
View Raw JSON Data
{
  "trx_id": "80b42083b051e1a494c8fb2d90754df961ab0fd0",
  "block": 53454188,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2021-05-04T15:56:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "27710.805038 VESTS"
    }
  ]
}
2021/05/04 14:37:15
voterbeeheap
authortrueflip
permlinktrue-flip-tfl-token-q-and-a-spring-2021
weight10000 (100.00%)
Transaction InfoBlock #53452623/Trx 23058197ce422a500772728172230c6cfeee5997
View Raw JSON Data
{
  "trx_id": "23058197ce422a500772728172230c6cfeee5997",
  "block": 53452623,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2021-05-04T14:37:15",
  "op": [
    "vote",
    {
      "voter": "beeheap",
      "author": "trueflip",
      "permlink": "true-flip-tfl-token-q-and-a-spring-2021",
      "weight": 10000
    }
  ]
}
steemdelegated 5.236 SP to @beeheap
2020/12/11 09:05:45
delegatorsteem
delegateebeeheap
vesting shares8525.589440 VESTS
Transaction InfoBlock #49352790/Trx e2f81bfa2579d449263f824818502aac51ee9c0f
View Raw JSON Data
{
  "trx_id": "e2f81bfa2579d449263f824818502aac51ee9c0f",
  "block": 49352790,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-12-11T09:05:45",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8525.589440 VESTS"
    }
  ]
}
steemdelegated 1.174 SP to @beeheap
2020/12/06 02:43:21
delegatorsteem
delegateebeeheap
vesting shares1912.543513 VESTS
Transaction InfoBlock #49204360/Trx 31dd9c312460091266e2c35211333a68a6003216
View Raw JSON Data
{
  "trx_id": "31dd9c312460091266e2c35211333a68a6003216",
  "block": 49204360,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-12-06T02:43:21",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "1912.543513 VESTS"
    }
  ]
}
steemdelegated 5.239 SP to @beeheap
2020/12/05 10:40:15
delegatorsteem
delegateebeeheap
vesting shares8531.956079 VESTS
Transaction InfoBlock #49185465/Trx 8b05542a7fefcb5880e88eff9cfe2660e441abd5
View Raw JSON Data
{
  "trx_id": "8b05542a7fefcb5880e88eff9cfe2660e441abd5",
  "block": 49185465,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-12-05T10:40:15",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8531.956079 VESTS"
    }
  ]
}
steemdelegated 1.179 SP to @beeheap
2020/11/02 11:11:00
delegatorsteem
delegateebeeheap
vesting shares1920.017158 VESTS
Transaction InfoBlock #48252556/Trx 61bbe3c6a143fd45805081e90569185cd145f004
View Raw JSON Data
{
  "trx_id": "61bbe3c6a143fd45805081e90569185cd145f004",
  "block": 48252556,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-11-02T11:11:00",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "1920.017158 VESTS"
    }
  ]
}
steemdelegated 5.364 SP to @beeheap
2020/05/09 03:38:18
delegatorsteem
delegateebeeheap
vesting shares8734.602653 VESTS
Transaction InfoBlock #43214572/Trx 3bc2f354ba09c887746bed09ef74d33758f31826
View Raw JSON Data
{
  "trx_id": "3bc2f354ba09c887746bed09ef74d33758f31826",
  "block": 43214572,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-05-09T03:38:18",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8734.602653 VESTS"
    }
  ]
}
steemdelegated 1.200 SP to @beeheap
2020/05/08 06:55:48
delegatorsteem
delegateebeeheap
vesting shares1953.311140 VESTS
Transaction InfoBlock #43190306/Trx 26e1533aee67fb3c09b6c9e063a7398a7ef9305d
View Raw JSON Data
{
  "trx_id": "26e1533aee67fb3c09b6c9e063a7398a7ef9305d",
  "block": 43190306,
  "trx_in_block": 41,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-05-08T06:55:48",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "1953.311140 VESTS"
    }
  ]
}
steemdelegated 5.404 SP to @beeheap
2020/01/10 10:55:03
delegatorsteem
delegateebeeheap
vesting shares8799.663806 VESTS
Transaction InfoBlock #39804115/Trx 5bf0baddf65d40edc200eff594e116994653d8a3
View Raw JSON Data
{
  "trx_id": "5bf0baddf65d40edc200eff594e116994653d8a3",
  "block": 39804115,
  "trx_in_block": 8,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-01-10T10:55:03",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8799.663806 VESTS"
    }
  ]
}
2019/10/15 07:03:39
parent author
parent permlinkmap
authorbeeheap
permlinkcreate-a-fantasy-grid-map-in-excel
titleCreate a fantasy grid map - in Excel
body@@ -333,16 +333,156 @@ bottom. + This is an example of what the tool generates:%0A!%5B%5D(https://cdn.steemitimages.com/DQmZjvj2UKQ15bAACMUtTQV164YR22FtANFBPfUwTPUAxz2/image.png) %0A# Techn
json metadata{"tags":["creator","excel","grid","civilization"],"image":["https://cdn.steemitimages.com/DQmZjvj2UKQ15bAACMUtTQV164YR22FtANFBPfUwTPUAxz2/image.png","https://cdn.steemitimages.com/DQmZHqdvYFSGUCvtxcyDDtf5F3uvAAh8mjV6SpNPLEg5gvC/image.png","https://cdn.steemitimages.com/DQmc96AKZ3pMSA1mo6VNeNvFRKPvRQYpJmtfW549r7xC2T2/image.png","https://cdn.steemitimages.com/DQmZVashmJi9EH24mFbph6F63ehXeWWqEacsFujn9vSUdGn/image.png","https://cdn.steemitimages.com/DQmYmBfwJ4eX37J8aDzdR7BxhRNScpRCAbXvYRbfEyszi7a/image.png","https://cdn.steemitimages.com/DQmaSwc534jTYxok7CCryZ1Ura2c47dstG8ZgisCVqbrZyJ/image.png","https://cdn.steemitimages.com/DQmc1GML9geE7UjRKEi1ndEBhaqg88v3LrQzGhGMQ5Rqt9p/image.png","https://cdn.steemitimages.com/DQmPJZRjkULZjTKha98CJRqxHWVjhpWzaWxSSC2BUjyQnzR/image.png","https://cdn.steemitimages.com/DQmUaeckBdg1o8U133eVnZjWfDQkcaC9sSmS8cXz8GmyXq6/image.png","https://cdn.steemitimages.com/DQmP31tpnu4ySWkZeSLVa3hWovDge49n7VzhQNhtEdcTGgx/image.png","https://cdn.steemitimages.com/DQmcVgNygxerZJQRWP46iyQcYJQNpTonR5Gvav34QfXxmjN/image.png"],"links":["https://visualbruno.itch.io/world-of-empires2","https://stackoverflow.com/a/33170115/4552016","https://flafla2.github.io/2014/08/09/perlinnoise.html","https://www.dropbox.com/s/0ngjkp0kabugks6/WorldOfEmpires2_map_edit_steemit.xlsx?dl=0"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #37298625/Trx f88a7a2110c261464cba9460c13f229fed5081fb
View Raw JSON Data
{
  "trx_id": "f88a7a2110c261464cba9460c13f229fed5081fb",
  "block": 37298625,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-10-15T07:03:39",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "map",
      "author": "beeheap",
      "permlink": "create-a-fantasy-grid-map-in-excel",
      "title": "Create a fantasy grid map - in Excel",
      "body": "@@ -333,16 +333,156 @@\n  bottom.\n+ This is an example of what the tool generates:%0A!%5B%5D(https://cdn.steemitimages.com/DQmZjvj2UKQ15bAACMUtTQV164YR22FtANFBPfUwTPUAxz2/image.png)\n %0A# Techn\n",
      "json_metadata": "{\"tags\":[\"creator\",\"excel\",\"grid\",\"civilization\"],\"image\":[\"https://cdn.steemitimages.com/DQmZjvj2UKQ15bAACMUtTQV164YR22FtANFBPfUwTPUAxz2/image.png\",\"https://cdn.steemitimages.com/DQmZHqdvYFSGUCvtxcyDDtf5F3uvAAh8mjV6SpNPLEg5gvC/image.png\",\"https://cdn.steemitimages.com/DQmc96AKZ3pMSA1mo6VNeNvFRKPvRQYpJmtfW549r7xC2T2/image.png\",\"https://cdn.steemitimages.com/DQmZVashmJi9EH24mFbph6F63ehXeWWqEacsFujn9vSUdGn/image.png\",\"https://cdn.steemitimages.com/DQmYmBfwJ4eX37J8aDzdR7BxhRNScpRCAbXvYRbfEyszi7a/image.png\",\"https://cdn.steemitimages.com/DQmaSwc534jTYxok7CCryZ1Ura2c47dstG8ZgisCVqbrZyJ/image.png\",\"https://cdn.steemitimages.com/DQmc1GML9geE7UjRKEi1ndEBhaqg88v3LrQzGhGMQ5Rqt9p/image.png\",\"https://cdn.steemitimages.com/DQmPJZRjkULZjTKha98CJRqxHWVjhpWzaWxSSC2BUjyQnzR/image.png\",\"https://cdn.steemitimages.com/DQmUaeckBdg1o8U133eVnZjWfDQkcaC9sSmS8cXz8GmyXq6/image.png\",\"https://cdn.steemitimages.com/DQmP31tpnu4ySWkZeSLVa3hWovDge49n7VzhQNhtEdcTGgx/image.png\",\"https://cdn.steemitimages.com/DQmcVgNygxerZJQRWP46iyQcYJQNpTonR5Gvav34QfXxmjN/image.png\"],\"links\":[\"https://visualbruno.itch.io/world-of-empires2\",\"https://stackoverflow.com/a/33170115/4552016\",\"https://flafla2.github.io/2014/08/09/perlinnoise.html\",\"https://www.dropbox.com/s/0ngjkp0kabugks6/WorldOfEmpires2_map_edit_steemit.xlsx?dl=0\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2019/10/14 19:19:30
voterflabber
authorbeeheap
permlinkcreate-a-fantasy-grid-map-in-excel
weight10000 (100.00%)
Transaction InfoBlock #37284573/Trx 285e7797e1f8b0d8c36e748f32a0434deb661bd3
View Raw JSON Data
{
  "trx_id": "285e7797e1f8b0d8c36e748f32a0434deb661bd3",
  "block": 37284573,
  "trx_in_block": 26,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-10-14T19:19:30",
  "op": [
    "vote",
    {
      "voter": "flabber",
      "author": "beeheap",
      "permlink": "create-a-fantasy-grid-map-in-excel",
      "weight": 10000
    }
  ]
}
steemdelegated 17.894 SP to @beeheap
2019/10/11 12:18:51
delegatorsteem
delegateebeeheap
vesting shares29138.473773 VESTS
Transaction InfoBlock #37189964/Trx a4428bc601a88ccbce3db9f836df9104245100f9
View Raw JSON Data
{
  "trx_id": "a4428bc601a88ccbce3db9f836df9104245100f9",
  "block": 37189964,
  "trx_in_block": 18,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-10-11T12:18:51",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "29138.473773 VESTS"
    }
  ]
}
2019/10/11 11:32:30
voterfilipino
authorbeeheap
permlinkcreate-a-fantasy-grid-map-in-excel
weight1000 (10.00%)
Transaction InfoBlock #37189039/Trx 9176361c42ddd74469c4f4833ba3c4e2feb0a341
View Raw JSON Data
{
  "trx_id": "9176361c42ddd74469c4f4833ba3c4e2feb0a341",
  "block": 37189039,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-10-11T11:32:30",
  "op": [
    "vote",
    {
      "voter": "filipino",
      "author": "beeheap",
      "permlink": "create-a-fantasy-grid-map-in-excel",
      "weight": 1000
    }
  ]
}
2019/10/11 10:43:33
parent author
parent permlinkmap
authorbeeheap
permlinkcreate-a-fantasy-grid-map-in-excel
titleCreate a fantasy grid map - in Excel
body# What? # For a Civilization-like game I like to play (freeware, https://visualbruno.itch.io/world-of-empires2 ) I wanted to create better maps. As Civilization used to be a simple squares-based map, I found Excel an easy and visual tool to get this done. This article is about the map creator I made. The link to the tool is at the bottom. # Technical # Using just excel functions the tool can create a 64x48 tiles map. The tool does not use macros. It has to have a random factor, but should be deterministic in its outcome. As in: you can pick a random seed, but given the same seed, it should give the same outcome. # The map making # ## Step 1 ## As a base for the map, I started off with one cell where the user has to put in a "seed value", a number greater than 0 which is the base for the whole map. Based on this seed and the dimensions of the map, the grid is filled with pseudo-random numbers. In Excel function: `=MOD(48271*A1,2^31-1)` - this is the [Lehmer random number generator](https://stackoverflow.com/a/33170115/4552016) ![](https://cdn.steemitimages.com/DQmZHqdvYFSGUCvtxcyDDtf5F3uvAAh8mjV6SpNPLEg5gvC/image.png) ## Step 2 ## Standardize these values to the range 0-1, so they can be used easier. I added some conditional formatting for easier visual checks. ![](https://cdn.steemitimages.com/DQmc96AKZ3pMSA1mo6VNeNvFRKPvRQYpJmtfW549r7xC2T2/image.png) ## Step 3 ## The next step is to use these random numbers to create land and sea. For this we need one more extra input: the percentage of land that the user wants. The issue is that the map just based on the random numbers from Step 2 looks like this (top 40% of random values are land here): ![](https://cdn.steemitimages.com/DQmZVashmJi9EH24mFbph6F63ehXeWWqEacsFujn9vSUdGn/image.png) In order to make a more credible map, land masses need to be clumped together, which is basically smoothening the random values. The trick for that is using [Perlin Noise](https://flafla2.github.io/2014/08/09/perlinnoise.html) ### Perlin Noise example ### ![](https://cdn.steemitimages.com/DQmYmBfwJ4eX37J8aDzdR7BxhRNScpRCAbXvYRbfEyszi7a/image.png) The calculation here starts off with the grid filled with pseudo random values. In order to smoothen it we will only take some values. In the example above the *octave* is 2. An octave is basically setting the smoothness: the higher the octave, the smoother the outcome. An octave of 2 means that only every 4th random value is used, the values in between are calculated based on these values. What that means is that e.g. the circled cells are the same value as the random values, the rest is calculated. An example is the 0,51 (yellow box). The general formula is: `value(i0,j0)*(1-vert_blend)*(1-horiz_blend)+value(i0,j1)*(vert_blend)*(1-horiz_blend)+value(i1,j0)*(1-vert_blend)*(horiz_blend)+value(i1,j1)*(vert_blend)*(horiz_blend)` This means for 0,51: `0,00*(1-0,75)*(1-0,5)+0,43*(0,75)*(1-0,5)+0,71*(1-0,75)*(1-0,5)+0,70*(0,75)*(0,5)=0,51` Doing that for various *octaves* (1-4), this is the result from random to octave 4: ![](https://cdn.steemitimages.com/DQmaSwc534jTYxok7CCryZ1Ura2c47dstG8ZgisCVqbrZyJ/image.png) ## Step 4 ## The 4th step is merging these 5 random maps. Again: I am basically creating a height map, so only the e.g. top 40% of random values becomes land, the rest sea. The main challenge here is the weighing factor per map. If I want a pangea map (one big landmass), I want to give the 4th octave a big weight, the lower ones less. What I came up with are 2 factors: the maximum octave used (0 is the random numbers I started with) and the octave multiplier: starting with a weight of 1 for octave 0, the next octave weight gets multiplied by this number. The results of these steps becomes apparent in step 5. ## Step 5 ## Step 5 is setting the landmass percentage, as said above: only the e.g. top 40% of random values of step 4 become land, the rest sea. With 40%, this is the impact of the settings of step 4: ![](https://cdn.steemitimages.com/DQmc1GML9geE7UjRKEi1ndEBhaqg88v3LrQzGhGMQ5Rqt9p/image.png) This starts looking like a map! And what I can do is create some pre-determined settings for e.g. "a fractal map", "a pangea map" and a "continents" map, just a random seed and 3 numbers will do :). ## Step 6 ## Step 6 is a small smoothening: removing the single tile water or land. Basically: if all tiles around it are water, than the tile itself should be water. ## Step 7 ## Mountains & lakes... Say the top 1% of the height map (step 5) should be mountain. For lakes: every water tile that has at least 2 land tiles next to it becomes a lake. After step 6&7, this is the land (light green), lake (blue), sea (white) & mountain (dark green) map. ![](https://cdn.steemitimages.com/DQmPJZRjkULZjTKha98CJRqxHWVjhpWzaWxSSC2BUjyQnzR/image.png) ## Step 8 ## Climate... Here I have 2 inputs: rainfall (0: little, 9: lots) and temperature (0: cold, 9: hot). But how does this translate into different tile types? For that I created a small table for the different types of terrain, their min&max temperature (scale: 0-100) and min&max rainfall (0-100). ![](https://cdn.steemitimages.com/DQmUaeckBdg1o8U133eVnZjWfDQkcaC9sSmS8cXz8GmyXq6/image.png) ### Temperature ### This one is rather easy: it runs from 0 at the poles to 100 at the equator. One small adjustment: when the temperature is set to "cold" (=0), it runs from 0 to 90 and when it's set to hot (=9) it runs from 9 to 99. ### Rainfall ### In my tool I'm basically using a Perlin noise map with an octave of 1,5. I'm using the resulting (random) numbers for 80% and add the setting for rainfall for 20%, so a "very wet" map will be in the range of 20-100 and a very dry map will be 0-80. This leads clusters of wet and dry, e.g.: ![](https://cdn.steemitimages.com/DQmP31tpnu4ySWkZeSLVa3hWovDge49n7VzhQNhtEdcTGgx/image.png) ### Terrain type ### The next step is to find out if a terrain type can exist on a certain cell in the grid. That's not too complicated with the temperature and the rainfall already calculated. But it can happen that based on these 2 criteria multiple terrain types can occur on one cell, so I needed some pseudo random variable to determine the final terrain type. Again: I want the system to be deterministic and always lead to the same answer. So what I did is to take the random values of step 2 and for every terrain type, I took the next chunck of that random value, like so: Random value from step 2: 0,78252378 Tundra (from digit 2): 0,8252378 Grassland (from digit 3): 0,252378 Plains (from digit 4): 0,52378 Etcetera... In that way, I have the temperature & rainfall to filter out which terrain types are possible and a pseudo random factor to act as a tie-breaker if more terrain types are possible. ## The result ## ![](https://cdn.steemitimages.com/DQmcVgNygxerZJQRWP46iyQcYJQNpTonR5Gvav34QfXxmjN/image.png) If you have excel and want to play around with this tool, you can download it here: https://www.dropbox.com/s/0ngjkp0kabugks6/WorldOfEmpires2_map_edit_steemit.xlsx?dl=0 Feedback is very welcome!
json metadata{"tags":["map","creator","excel","grid","civilization"],"image":["https://cdn.steemitimages.com/DQmZHqdvYFSGUCvtxcyDDtf5F3uvAAh8mjV6SpNPLEg5gvC/image.png","https://cdn.steemitimages.com/DQmc96AKZ3pMSA1mo6VNeNvFRKPvRQYpJmtfW549r7xC2T2/image.png","https://cdn.steemitimages.com/DQmZVashmJi9EH24mFbph6F63ehXeWWqEacsFujn9vSUdGn/image.png","https://cdn.steemitimages.com/DQmYmBfwJ4eX37J8aDzdR7BxhRNScpRCAbXvYRbfEyszi7a/image.png","https://cdn.steemitimages.com/DQmaSwc534jTYxok7CCryZ1Ura2c47dstG8ZgisCVqbrZyJ/image.png","https://cdn.steemitimages.com/DQmc1GML9geE7UjRKEi1ndEBhaqg88v3LrQzGhGMQ5Rqt9p/image.png","https://cdn.steemitimages.com/DQmPJZRjkULZjTKha98CJRqxHWVjhpWzaWxSSC2BUjyQnzR/image.png","https://cdn.steemitimages.com/DQmUaeckBdg1o8U133eVnZjWfDQkcaC9sSmS8cXz8GmyXq6/image.png","https://cdn.steemitimages.com/DQmP31tpnu4ySWkZeSLVa3hWovDge49n7VzhQNhtEdcTGgx/image.png","https://cdn.steemitimages.com/DQmcVgNygxerZJQRWP46iyQcYJQNpTonR5Gvav34QfXxmjN/image.png"],"links":["https://visualbruno.itch.io/world-of-empires2","https://stackoverflow.com/a/33170115/4552016","https://flafla2.github.io/2014/08/09/perlinnoise.html","https://www.dropbox.com/s/0ngjkp0kabugks6/WorldOfEmpires2_map_edit_steemit.xlsx?dl=0"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #37188061/Trx c854edb61f1ebc3787683c7be43db96ae6a9e901
View Raw JSON Data
{
  "trx_id": "c854edb61f1ebc3787683c7be43db96ae6a9e901",
  "block": 37188061,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-10-11T10:43:33",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "map",
      "author": "beeheap",
      "permlink": "create-a-fantasy-grid-map-in-excel",
      "title": "Create a fantasy grid map - in Excel",
      "body": "# What? #\nFor a Civilization-like game I like to play (freeware, https://visualbruno.itch.io/world-of-empires2 ) I wanted to create better maps. As Civilization used to be a simple squares-based map, I found Excel an easy and visual tool to get this done. This article is about the map creator I made. The link to the tool is at the bottom.\n# Technical #\nUsing just excel functions the tool can create a 64x48 tiles map. The tool does not use macros. It has to have a random factor, but should be deterministic in its outcome. As in: you can pick a random seed, but given the same seed, it should give the same outcome.\n# The map making #\n## Step 1 ##\nAs a base for the map, I started off with one cell where the user has to put in a \"seed value\", a number greater than 0 which is the base for the whole map. Based on this seed and the dimensions of the map, the grid is filled with pseudo-random numbers. In Excel function:\n`=MOD(48271*A1,2^31-1)`  -  this is the [Lehmer random number generator](https://stackoverflow.com/a/33170115/4552016)\n![](https://cdn.steemitimages.com/DQmZHqdvYFSGUCvtxcyDDtf5F3uvAAh8mjV6SpNPLEg5gvC/image.png)\n\n## Step 2 ##\nStandardize these values to the range 0-1, so they can be used easier. I added some conditional formatting for easier visual checks.\n![](https://cdn.steemitimages.com/DQmc96AKZ3pMSA1mo6VNeNvFRKPvRQYpJmtfW549r7xC2T2/image.png)\n\n## Step 3 ##\nThe next step is to use these random numbers to create land and sea. For this we need one more extra input: the percentage of land that the user wants. The issue is that the map just based on the random numbers from Step 2 looks like this (top 40% of random values are land here):\n![](https://cdn.steemitimages.com/DQmZVashmJi9EH24mFbph6F63ehXeWWqEacsFujn9vSUdGn/image.png)\nIn order to make a more credible map, land masses need to be clumped together, which is basically smoothening the random values. The trick for that is using [Perlin Noise](https://flafla2.github.io/2014/08/09/perlinnoise.html)\n### Perlin Noise example ###\n![](https://cdn.steemitimages.com/DQmYmBfwJ4eX37J8aDzdR7BxhRNScpRCAbXvYRbfEyszi7a/image.png) \nThe calculation here starts off with the grid filled with pseudo random values. In order to smoothen it we will only take some values. In the example above the *octave* is 2. An octave is basically setting the smoothness: the higher the octave, the smoother the outcome. An octave of 2 means that only every 4th random value is used, the values in between are calculated based on these values. What that means is that e.g. the circled cells are the same value as the random values, the rest is calculated.\nAn example is the 0,51 (yellow box). The general formula is:\n`value(i0,j0)*(1-vert_blend)*(1-horiz_blend)+value(i0,j1)*(vert_blend)*(1-horiz_blend)+value(i1,j0)*(1-vert_blend)*(horiz_blend)+value(i1,j1)*(vert_blend)*(horiz_blend)`\nThis means for 0,51:\n`0,00*(1-0,75)*(1-0,5)+0,43*(0,75)*(1-0,5)+0,71*(1-0,75)*(1-0,5)+0,70*(0,75)*(0,5)=0,51`\nDoing that for various *octaves* (1-4), this is the result from random to octave 4:\n![](https://cdn.steemitimages.com/DQmaSwc534jTYxok7CCryZ1Ura2c47dstG8ZgisCVqbrZyJ/image.png)\n## Step 4 ##\nThe 4th step is merging these 5 random maps. Again: I am basically creating a height map, so only the e.g. top 40% of random values becomes land, the rest sea. The main challenge here is the weighing factor per map. If I want a pangea map (one big landmass), I want to give the 4th octave a big weight, the lower ones less. What I came up with are 2 factors: the maximum octave used (0 is the random numbers I started with) and the octave multiplier: starting with a weight of 1 for octave 0, the next octave weight gets multiplied by this number. The results of these steps becomes apparent in step 5.\n## Step 5 ##\nStep 5 is setting the landmass percentage, as said above: only the e.g. top 40% of random values of step 4 become land, the rest sea. With 40%, this is the impact of the settings of step 4:\n![](https://cdn.steemitimages.com/DQmc1GML9geE7UjRKEi1ndEBhaqg88v3LrQzGhGMQ5Rqt9p/image.png)\nThis starts looking like a map! And what I can do is create some pre-determined settings for e.g. \"a fractal map\", \"a pangea map\" and a \"continents\" map, just a random seed and 3 numbers will do :).\n## Step 6 ##\nStep 6 is a small smoothening: removing the single tile water or land. Basically: if all tiles around it are water, than the tile itself should be water.\n## Step 7 ##\nMountains & lakes... Say the top 1% of the height map (step 5) should be mountain. For lakes: every water tile that has at least 2 land tiles next to it becomes a lake. After step 6&7, this is the land (light green), lake (blue), sea (white) & mountain (dark green) map.\n![](https://cdn.steemitimages.com/DQmPJZRjkULZjTKha98CJRqxHWVjhpWzaWxSSC2BUjyQnzR/image.png)\n## Step 8 ##\nClimate... Here I have 2 inputs: rainfall (0: little, 9: lots) and temperature (0: cold, 9: hot). But how does this translate into different tile types? For that I created a small table for the different types of terrain, their min&max temperature (scale: 0-100) and min&max rainfall (0-100).\n![](https://cdn.steemitimages.com/DQmUaeckBdg1o8U133eVnZjWfDQkcaC9sSmS8cXz8GmyXq6/image.png)\n### Temperature ###\nThis one is rather easy: it runs from 0 at the poles to 100 at the equator. One small adjustment: when the temperature is set to \"cold\" (=0), it runs from 0 to 90 and when it's set to hot (=9) it runs from 9 to 99.\n### Rainfall ###\nIn my tool I'm basically using a Perlin noise map with an octave of 1,5. I'm using the resulting (random) numbers for 80% and add the setting for rainfall for 20%, so a \"very wet\" map will be in the range of 20-100 and a very dry map will be 0-80. This leads clusters of wet and dry, e.g.:\n![](https://cdn.steemitimages.com/DQmP31tpnu4ySWkZeSLVa3hWovDge49n7VzhQNhtEdcTGgx/image.png)\n### Terrain type ###\nThe next step is to find out if a terrain type can exist on a certain cell in the grid. That's not too complicated with the temperature and the rainfall already calculated. But it can happen that based on these 2 criteria multiple terrain types can occur on one cell, so I needed some pseudo random variable to determine the final terrain type. Again: I want the system to be deterministic and always lead to the same answer. So what I did is to take the random values of step 2 and for every terrain type, I took the next chunck of that random value, like so:\nRandom value from step 2: 0,78252378\nTundra (from digit 2): 0,8252378\nGrassland (from digit 3): 0,252378\nPlains (from digit 4): 0,52378 \nEtcetera... In that way, I have the temperature & rainfall to filter out which terrain types are possible and a pseudo random factor to act as a tie-breaker if more terrain types are possible.\n## The result ##\n![](https://cdn.steemitimages.com/DQmcVgNygxerZJQRWP46iyQcYJQNpTonR5Gvav34QfXxmjN/image.png)\nIf you have excel and want to play around with this tool, you can download it here:\nhttps://www.dropbox.com/s/0ngjkp0kabugks6/WorldOfEmpires2_map_edit_steemit.xlsx?dl=0\nFeedback is very welcome!",
      "json_metadata": "{\"tags\":[\"map\",\"creator\",\"excel\",\"grid\",\"civilization\"],\"image\":[\"https://cdn.steemitimages.com/DQmZHqdvYFSGUCvtxcyDDtf5F3uvAAh8mjV6SpNPLEg5gvC/image.png\",\"https://cdn.steemitimages.com/DQmc96AKZ3pMSA1mo6VNeNvFRKPvRQYpJmtfW549r7xC2T2/image.png\",\"https://cdn.steemitimages.com/DQmZVashmJi9EH24mFbph6F63ehXeWWqEacsFujn9vSUdGn/image.png\",\"https://cdn.steemitimages.com/DQmYmBfwJ4eX37J8aDzdR7BxhRNScpRCAbXvYRbfEyszi7a/image.png\",\"https://cdn.steemitimages.com/DQmaSwc534jTYxok7CCryZ1Ura2c47dstG8ZgisCVqbrZyJ/image.png\",\"https://cdn.steemitimages.com/DQmc1GML9geE7UjRKEi1ndEBhaqg88v3LrQzGhGMQ5Rqt9p/image.png\",\"https://cdn.steemitimages.com/DQmPJZRjkULZjTKha98CJRqxHWVjhpWzaWxSSC2BUjyQnzR/image.png\",\"https://cdn.steemitimages.com/DQmUaeckBdg1o8U133eVnZjWfDQkcaC9sSmS8cXz8GmyXq6/image.png\",\"https://cdn.steemitimages.com/DQmP31tpnu4ySWkZeSLVa3hWovDge49n7VzhQNhtEdcTGgx/image.png\",\"https://cdn.steemitimages.com/DQmcVgNygxerZJQRWP46iyQcYJQNpTonR5Gvav34QfXxmjN/image.png\"],\"links\":[\"https://visualbruno.itch.io/world-of-empires2\",\"https://stackoverflow.com/a/33170115/4552016\",\"https://flafla2.github.io/2014/08/09/perlinnoise.html\",\"https://www.dropbox.com/s/0ngjkp0kabugks6/WorldOfEmpires2_map_edit_steemit.xlsx?dl=0\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2019/08/24 09:41:39
parent authorbeeheap
parent permlinkexcel-and-vba-development-with-github
authorsteemitboard
permlinksteemitboard-notify-beeheap-20190824t094138000z
title
bodyCongratulations @beeheap! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@beeheap/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@beeheap) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=beeheap)_</sub> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
Transaction InfoBlock #35829167/Trx e6fef037351aba026c741537cb47929c92d18af1
View Raw JSON Data
{
  "trx_id": "e6fef037351aba026c741537cb47929c92d18af1",
  "block": 35829167,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-08-24T09:41:39",
  "op": [
    "comment",
    {
      "parent_author": "beeheap",
      "parent_permlink": "excel-and-vba-development-with-github",
      "author": "steemitboard",
      "permlink": "steemitboard-notify-beeheap-20190824t094138000z",
      "title": "",
      "body": "Congratulations @beeheap! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@beeheap/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@beeheap) and compare to others on the [Steem Ranking](https://steemitboard.com/ranking/index.php?name=beeheap)_</sub>\n\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
    }
  ]
}
steemdelegated 5.492 SP to @beeheap
2019/05/12 13:31:30
delegatorsteem
delegateebeeheap
vesting shares8943.202877 VESTS
Transaction InfoBlock #32843833/Trx 2097a47eb8e90b2cdfb224f505e6744a387260e8
View Raw JSON Data
{
  "trx_id": "2097a47eb8e90b2cdfb224f505e6744a387260e8",
  "block": 32843833,
  "trx_in_block": 65,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-05-12T13:31:30",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "8943.202877 VESTS"
    }
  ]
}
2018/11/16 17:49:51
votercryptowezz
authorbeeheap
permlinkexcel-and-vba-development-with-github
weight10000 (100.00%)
Transaction InfoBlock #27756475/Trx d52a3bee83989ca91bafe12a32803e9cb65ea8a9
View Raw JSON Data
{
  "trx_id": "d52a3bee83989ca91bafe12a32803e9cb65ea8a9",
  "block": 27756475,
  "trx_in_block": 12,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-16T17:49:51",
  "op": [
    "vote",
    {
      "voter": "cryptowezz",
      "author": "beeheap",
      "permlink": "excel-and-vba-development-with-github",
      "weight": 10000
    }
  ]
}
2018/11/16 17:49:39
votercryptowezz
authorbeeheap
permlinkre-bstiel-re-beeheap-excel-and-vba-development-with-github-20171211t121837962z
weight10000 (100.00%)
Transaction InfoBlock #27756471/Trx 901aff004d53f82d57487ea612aec3f1123eef18
View Raw JSON Data
{
  "trx_id": "901aff004d53f82d57487ea612aec3f1123eef18",
  "block": 27756471,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-16T17:49:39",
  "op": [
    "vote",
    {
      "voter": "cryptowezz",
      "author": "beeheap",
      "permlink": "re-bstiel-re-beeheap-excel-and-vba-development-with-github-20171211t121837962z",
      "weight": 10000
    }
  ]
}
steemdelegated 5.615 SP to @beeheap
2018/05/16 20:07:48
delegatorsteem
delegateebeeheap
vesting shares9142.755312 VESTS
Transaction InfoBlock #22489657/Trx 41d9a74a11abe7308d0337c48027c322338898db
View Raw JSON Data
{
  "trx_id": "41d9a74a11abe7308d0337c48027c322338898db",
  "block": 22489657,
  "trx_in_block": 28,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-05-16T20:07:48",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "9142.755312 VESTS"
    }
  ]
}
steemdelegated 18.192 SP to @beeheap
2018/02/22 12:16:39
delegatorsteem
delegateebeeheap
vesting shares29624.680313 VESTS
Transaction InfoBlock #20092361/Trx 5ccb1baa5bd684f7537f3152f211189d2419ca6d
View Raw JSON Data
{
  "trx_id": "5ccb1baa5bd684f7537f3152f211189d2419ca6d",
  "block": 20092361,
  "trx_in_block": 34,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-02-22T12:16:39",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "29624.680313 VESTS"
    }
  ]
}
2018/02/17 12:20:27
parent authorbeeheap
parent permlinkre-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180126t104602661z
authorspacebeard
permlinkre-beeheap-re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180217t122025654z
title
bodyyeah i had about 1.2 Eth with these fuckers, but it was all from profits so its not that big of deal but seriously this is bull shit.
json metadata{"tags":["crypto"],"app":"steemit/0.1"}
Transaction InfoBlock #19948475/Trx 609f6cd84bf2f5d3cb9bd33e3233aaea67a184a1
View Raw JSON Data
{
  "trx_id": "609f6cd84bf2f5d3cb9bd33e3233aaea67a184a1",
  "block": 19948475,
  "trx_in_block": 41,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-02-17T12:20:27",
  "op": [
    "comment",
    {
      "parent_author": "beeheap",
      "parent_permlink": "re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180126t104602661z",
      "author": "spacebeard",
      "permlink": "re-beeheap-re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180217t122025654z",
      "title": "",
      "body": "yeah i had about 1.2 Eth with these fuckers, but it was all from profits so its not that big of deal but seriously this is bull shit.",
      "json_metadata": "{\"tags\":[\"crypto\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2018/02/10 04:30:21
parent authorbeeheap
parent permlinkre-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180126t104602661z
authornuthman
permlinkre-beeheap-re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180210t043022274z
title
bodyIs there any new news about this? I only have 1 ETH invested in SYMM but it would really suck to lose it. I've sent in a request for a refund but am guessing that I'll never get a response.
json metadata{"tags":["crypto"],"app":"steemit/0.1"}
Transaction InfoBlock #19737658/Trx ae6da6904457b7e651dc8c1f04aeb70a79fb0347
View Raw JSON Data
{
  "trx_id": "ae6da6904457b7e651dc8c1f04aeb70a79fb0347",
  "block": 19737658,
  "trx_in_block": 16,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-02-10T04:30:21",
  "op": [
    "comment",
    {
      "parent_author": "beeheap",
      "parent_permlink": "re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180126t104602661z",
      "author": "nuthman",
      "permlink": "re-beeheap-re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180210t043022274z",
      "title": "",
      "body": "Is there any new news about this? I only have 1 ETH invested in SYMM but it would really suck to lose it. I've sent in a request for a refund but am guessing that I'll never get a response.",
      "json_metadata": "{\"tags\":[\"crypto\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2018/01/26 10:46:03
parent authorcoin.info
parent permlinkre-tonyfat-review-of-ico-symmetry-fund-20180119t135846811z
authorbeeheap
permlinkre-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180126t104602661z
title
bodyHey Tony, you might want to re-review this fund, hereby two links to a post I made. I have strong indications that it's a SCAM, so hope you can check my facts and change your article accordingly. https://bitcointalk.org/index.php?topic=2480514.msg28957307#msg28957307 or https://www.cryptocompare.com/coins/symm/post/p_671172
json metadata{"tags":["crypto"],"links":["https://bitcointalk.org/index.php?topic=2480514.msg28957307#msg28957307","https://www.cryptocompare.com/coins/symm/post/p_671172"],"app":"steemit/0.1"}
Transaction InfoBlock #19313830/Trx 8d05c0e3c1a3f9a6a9ba84ea76b344373cf9fb5a
View Raw JSON Data
{
  "trx_id": "8d05c0e3c1a3f9a6a9ba84ea76b344373cf9fb5a",
  "block": 19313830,
  "trx_in_block": 44,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-01-26T10:46:03",
  "op": [
    "comment",
    {
      "parent_author": "coin.info",
      "parent_permlink": "re-tonyfat-review-of-ico-symmetry-fund-20180119t135846811z",
      "author": "beeheap",
      "permlink": "re-coininfo-re-tonyfat-review-of-ico-symmetry-fund-20180126t104602661z",
      "title": "",
      "body": "Hey Tony, you might want to re-review this fund, hereby two links to a post I made. I have strong indications that it's a SCAM, so hope you can check my facts and change your article accordingly.\nhttps://bitcointalk.org/index.php?topic=2480514.msg28957307#msg28957307 or  https://www.cryptocompare.com/coins/symm/post/p_671172",
      "json_metadata": "{\"tags\":[\"crypto\"],\"links\":[\"https://bitcointalk.org/index.php?topic=2480514.msg28957307#msg28957307\",\"https://www.cryptocompare.com/coins/symm/post/p_671172\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/12/15 13:35:27
required auths[]
required posting auths["beeheap"]
idfollow
json["follow",{"follower":"beeheap","following":"cryptowezz","what":["blog"]}]
Transaction InfoBlock #18108461/Trx 36e5189ec6cf2d29c77e70e6294266a73c618732
View Raw JSON Data
{
  "trx_id": "36e5189ec6cf2d29c77e70e6294266a73c618732",
  "block": 18108461,
  "trx_in_block": 19,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-12-15T13:35:27",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "beeheap"
      ],
      "id": "follow",
      "json": "[\"follow\",{\"follower\":\"beeheap\",\"following\":\"cryptowezz\",\"what\":[\"blog\"]}]"
    }
  ]
}
2017/12/11 12:18:39
parent authorbstiel
parent permlinkre-beeheap-excel-and-vba-development-with-github-20171202t074944492z
authorbeeheap
permlinkre-bstiel-re-beeheap-excel-and-vba-development-with-github-20171211t121837962z
title
bodyHi Björn, thanks for your feedback! I do like your example, it does make life more convenient for some people. It does however have two drawbacks for me: - I would have to install & learn python (I do speak it a little). I do like to stick to my Excel/VBA only setup (with the GitHub GUI). It's basically the "lowest/least tech option". - In my setup there are some modules I don't want to export, have a test module and one with my API keys. I prefer those not to end up on the web, so still have to white list my modules somewhere. I'm trying to come up with an answer to your statement that "You are dependent on Excel, so if you copy your workbook from an email or another folder into your Git repository folder, your VBA export function will not run. " My macro runs just fine, it's only that my export directory settings are fixed in my Excel-dev file. What I've once built is an extra settings file in my work directory. On opening my workbook, the workbook looks for that settings file in the same directory it is located. It than grabs those settings and runs on whatever machine or give an error if it can't find the settings nor the normal GitHub directory.
json metadata{"tags":["vba"],"app":"steemit/0.1"}
Transaction InfoBlock #17991771/Trx c94884fa4747035efd811d2b64e448bd8fab7070
View Raw JSON Data
{
  "trx_id": "c94884fa4747035efd811d2b64e448bd8fab7070",
  "block": 17991771,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-12-11T12:18:39",
  "op": [
    "comment",
    {
      "parent_author": "bstiel",
      "parent_permlink": "re-beeheap-excel-and-vba-development-with-github-20171202t074944492z",
      "author": "beeheap",
      "permlink": "re-bstiel-re-beeheap-excel-and-vba-development-with-github-20171211t121837962z",
      "title": "",
      "body": "Hi Björn,\nthanks for your feedback! I do like your example, it does make life more convenient for some people. It does however have two drawbacks for me:\n- I would have to install & learn python (I do speak it a little). I do like to stick to my Excel/VBA only setup (with the GitHub GUI). It's basically the \"lowest/least tech option\".\n- In my setup there are some modules I don't want to export, have a test module and one with my API keys. I prefer those not to end up on the web, so still have to white list my modules somewhere.\n\nI'm trying to come up with an answer to your statement that \"You are dependent on Excel, so if you copy your workbook from an email or another folder into your Git repository folder, your VBA export function will not run. \" \nMy macro runs just fine, it's only that my export directory settings are fixed in my Excel-dev file. What I've once built is an extra settings file in my work directory. On opening my workbook, the workbook looks for that settings file in the same directory it is located. It than grabs those settings and runs on whatever machine or give an error if it can't find the settings nor the normal GitHub directory.",
      "json_metadata": "{\"tags\":[\"vba\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/12/02 12:08:00
voterbstiel
authorbeeheap
permlinkexcel-and-vba-development-with-github
weight10000 (100.00%)
Transaction InfoBlock #17732512/Trx 37cc417ee50b9fe3195ceb37e3cf1c6d874c06b0
View Raw JSON Data
{
  "trx_id": "37cc417ee50b9fe3195ceb37e3cf1c6d874c06b0",
  "block": 17732512,
  "trx_in_block": 8,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-12-02T12:08:00",
  "op": [
    "vote",
    {
      "voter": "bstiel",
      "author": "beeheap",
      "permlink": "excel-and-vba-development-with-github",
      "weight": 10000
    }
  ]
}
2017/12/02 07:49:42
parent authorbeeheap
parent permlinkexcel-and-vba-development-with-github
authorbstiel
permlinkre-beeheap-excel-and-vba-development-with-github-20171202t074944492z
title
bodyHi Koen, thanks for the article (funnily, I've actually come across your crypto currency workbook on GitHub in a completely different context). I've recently written about using the git pre-commit hook to take care of auto-exporting VBA code from a workbook. In other words, every time you do `git commit`, git executes a little Python script that grabs the VBA modules from the workbook, writes it to the file system and adds it to the commit: https://www.xltrail.com/blog/auto-export-vba-commit-hook What are your thoughts on that?
json metadata{"tags":["vba"],"links":["https://www.xltrail.com/blog/auto-export-vba-commit-hook"],"app":"steemit/0.1"}
Transaction InfoBlock #17727346/Trx 5641a19562669e953b2a65051bcb29c48136518d
View Raw JSON Data
{
  "trx_id": "5641a19562669e953b2a65051bcb29c48136518d",
  "block": 17727346,
  "trx_in_block": 9,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-12-02T07:49:42",
  "op": [
    "comment",
    {
      "parent_author": "beeheap",
      "parent_permlink": "excel-and-vba-development-with-github",
      "author": "bstiel",
      "permlink": "re-beeheap-excel-and-vba-development-with-github-20171202t074944492z",
      "title": "",
      "body": "Hi Koen,\n\nthanks for the article (funnily, I've actually come across your crypto currency workbook on GitHub in a completely different context).\n\nI've recently written about using the git pre-commit hook to take care of auto-exporting VBA code from a workbook. In other words, every time you do `git commit`, git executes a little Python script that grabs the VBA modules from the workbook, writes it to the file system and adds it to the commit: https://www.xltrail.com/blog/auto-export-vba-commit-hook\n\nWhat are your thoughts on that?",
      "json_metadata": "{\"tags\":[\"vba\"],\"links\":[\"https://www.xltrail.com/blog/auto-export-vba-commit-hook\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/11/20 22:37:06
voterlamubin3s
authorbeeheap
permlinkexcel-and-vba-development-with-github
weight10000 (100.00%)
Transaction InfoBlock #17399629/Trx 700a6ca5c8996d41aa5f22e91fbcea9c7dae9cbb
View Raw JSON Data
{
  "trx_id": "700a6ca5c8996d41aa5f22e91fbcea9c7dae9cbb",
  "block": 17399629,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-11-20T22:37:06",
  "op": [
    "vote",
    {
      "voter": "lamubin3s",
      "author": "beeheap",
      "permlink": "excel-and-vba-development-with-github",
      "weight": 10000
    }
  ]
}
2017/11/20 19:56:09
required auths[]
required posting auths["beeheap"]
idfollow
json["follow",{"follower":"beeheap","following":"dan.jeffries1","what":["blog"]}]
Transaction InfoBlock #17396413/Trx 1d0eda9d976ebb7d8baa5489b42353cb47d3aaa9
View Raw JSON Data
{
  "trx_id": "1d0eda9d976ebb7d8baa5489b42353cb47d3aaa9",
  "block": 17396413,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-11-20T19:56:09",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "beeheap"
      ],
      "id": "follow",
      "json": "[\"follow\",{\"follower\":\"beeheap\",\"following\":\"dan.jeffries1\",\"what\":[\"blog\"]}]"
    }
  ]
}
2017/11/20 19:49:24
parent author
parent permlinkvba
authorbeeheap
permlinkexcel-and-vba-development-with-github
titleExcel & VBA development with GitHub
body<html> <h1>A 5 step how-to for VBA/Excel developers who want to share their code and want to have structure in their excel-tool development.</h1> <h1><img src="https://uloqu.com/assets/excel_to_github.png" width="1541" height="244"/></h1> <p>What I have set up for my project:</p> <ol> <li>setup a <strong>basic excel</strong> to work on&nbsp;</li> <li>and an <strong>online place </strong>to store the project</li> <li>start coding and be able to <strong>test </strong>the code</li> <li>have a macro to <strong>export</strong> all relevant VBA code</li> <li>get the new code in a <strong>Github repository </strong>online</li> </ol> <h3><strong>1. Basic Excel setup</strong></h3> <p>I've been building quite a lot of excel tools in my life. Normally I save the excel file I am working on several times during development, using <strong>Save As</strong>. I use names like: <em>CryptoTool_20171118a.xlsm</em>, <em>CryptoTool_20171118b.xlsm</em>, etc. Some years ago I've worked on a start-up and discovered version control. So when I recently decided to build a VBA project to connect Excel to various bitcoin/cryptocurrency exchanges, I decided to go for a more professional approach: including version control and testing in my development process.</p> <p>One side note: version control only works well for VBA code, not so much for logging changes in sheets, charts etc. Anyhow, since my project is mainly about code, I decided to give version control a try. I do save my master file ocasionally with the naming convention above.</p> <h3>2. Store the project online</h3> <p>So, version control... According to Wikipedia: Git is a version control system for tracking changes in computer files and coordinating work on those files among multiple people.</p> <p>So Git basically 1) helps me tracking changes in your code and 2) gives me the ability to go back to earlier versions of that code. So I got myself <a href="https://github.com/krijnsent/">an account at GitHub</a>, and created a new project called <a href="https://github.com/krijnsent/crypto_vba/">crypto_vba</a>. Step one was to create a readme.md file and make a small description of the project.</p> <p>What I found hard about github is that git is basically command-line based. Although I grew up with MS DOS on the command line, I fancy a graphical interface. Luckily github has a desktop version: <a href="https://desktop.github.com/">https://desktop.github.com/</a> . After downloading and installing that it's pretty easy to connect it to my online project and to add a local directory where I will be storing the files I want to have online.</p> <h3>3. Code testing</h3> <p>After version control, a second building block for profesional development is <strong>testing</strong>. An extensive variety of this is Test driven development. That means: first write the test for a function, after which you can start building the function. I don't go that far for this project, but do include a test Sub at the top of every module.</p> <p>I found a complication while building this, as I need to test my code with some <em>private settings</em>. In my case that's the exchange API keys. I don't want those to end up in my Github repository online. So what I do:</p> <ul> <li>Create a module that won't be exported to my Github project</li> <li>In that module, create a public Constant:</li> </ul> <pre><code>Public Const apikey_btce = "MP3YF9J3"</code></pre> <p>And in the modules for the people who want to use it:</p> <pre><code>apikey = "your api key here"<br> 'Remove this line, unless you define 2 constants somewhere ( Public Const apikey_btce = "the key to use everywhere" etc )<br> apikey = apikey_btce</code></pre> <p>In this way, tests pass and as long as you don't export your secret module, nobody will have the private settings.</p> <h3>4. Export VBA code and import it into a test file</h3> <p>So now you have a setup where you can work in the master file, test the code and want to export that code. For this I found various snippets online, the version I use is here: <a href="https://pastebin.com/Lhb6yupj">https://pastebin.com/Lhb6yupj</a>. What this macro does:</p> <ul> <li>export all VBA modules that are listed and save them as .bas files in a specified directory</li> <li>import those .bas files into the example file in that same directory</li> </ul> <h3>5. Push the updated files online</h3> <p>So from the master you can export code, but still need to &nbsp;put it online. At that point, the <a href="https://desktop.github.com">Github desktop</a> comes in. What the program does is basically show you the differences in the .bas files between the last version and the current version. Note: the program is looking at the exported files, not at the code inside your Excel file. After adding a short description of the update, it's simply pushing the "Commit to master" button and after that at the top "push".&nbsp;</p> <p><img src="https://uloqu.com/assets/github_desktop.png" width="1280" height="720"/></p> <p><br></p> <p>So that's how it works for me, hope that this how-to inspires you to share your code. Feedback is welcome in the comments. If you want to go a step further, like importing &amp; exporting VBA code, do check out this project:&nbsp;<a href="http://ramblings.mcpher.com/Home/excelquirks/vbagit/gettingstarted">http://ramblings.mcpher.com/Home/excelquirks/vbagit/gettingstarted</a></p> <p><br></p> </html>
json metadata{"tags":["vba","github","development","excel"],"image":["https://uloqu.com/assets/excel_to_github.png","https://uloqu.com/assets/github_desktop.png"],"links":["https://github.com/krijnsent/","https://github.com/krijnsent/crypto_vba/","https://desktop.github.com/","https://pastebin.com/Lhb6yupj","https://desktop.github.com","http://ramblings.mcpher.com/Home/excelquirks/vbagit/gettingstarted"],"app":"steemit/0.1","format":"html"}
Transaction InfoBlock #17396278/Trx a9615f234c568c0ca2b1e7b6e6ec64c6a63e4f26
View Raw JSON Data
{
  "trx_id": "a9615f234c568c0ca2b1e7b6e6ec64c6a63e4f26",
  "block": 17396278,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-11-20T19:49:24",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "vba",
      "author": "beeheap",
      "permlink": "excel-and-vba-development-with-github",
      "title": "Excel & VBA development with GitHub",
      "body": "<html>\n<h1>A 5 step how-to for VBA/Excel developers who want to share their code and want to have structure in their excel-tool development.</h1>\n<h1><img src=\"https://uloqu.com/assets/excel_to_github.png\" width=\"1541\" height=\"244\"/></h1>\n<p>What I have set up for my project:</p>\n<ol>\n  <li>setup a <strong>basic excel</strong> to work on&nbsp;</li>\n  <li>and an <strong>online place </strong>to store the project</li>\n  <li>start coding and be able to <strong>test </strong>the code</li>\n  <li>have a macro to <strong>export</strong> all relevant VBA code</li>\n  <li>get the new code in a <strong>Github repository </strong>online</li>\n</ol>\n<h3><strong>1. Basic Excel setup</strong></h3>\n<p>I've been building quite a lot of excel tools in my life. Normally I save the excel file I am working on several times during development, using <strong>Save As</strong>. I use names like: <em>CryptoTool_20171118a.xlsm</em>, <em>CryptoTool_20171118b.xlsm</em>, etc. Some years ago I've worked on a start-up and discovered version control. So when I recently decided to build a VBA project to connect Excel to various bitcoin/cryptocurrency exchanges, I decided to go for a more professional approach: including version control and testing in my development process.</p>\n<p>One side note: version control only works well for VBA code, not so much for logging changes in sheets, charts etc. Anyhow, since my project is mainly about code, I decided to give version control a try. I do save my master file ocasionally with the naming convention above.</p>\n<h3>2. Store the project online</h3>\n<p>So, version control... According to Wikipedia: Git is a version control system for tracking changes in computer files and coordinating work on those files among multiple people.</p>\n<p>So Git basically 1) helps me tracking changes in your code and 2) gives me the ability to go back to earlier versions of that code. So I got myself <a href=\"https://github.com/krijnsent/\">an account at GitHub</a>, and created a new project called <a href=\"https://github.com/krijnsent/crypto_vba/\">crypto_vba</a>. Step one was to create a readme.md file and make a small description of the project.</p>\n<p>What I found hard about github is that git is basically command-line based. Although I grew up with MS DOS on the command line, I fancy a graphical interface. Luckily github has a desktop version: <a href=\"https://desktop.github.com/\">https://desktop.github.com/</a> . After downloading and installing that it's pretty easy to connect it to my online project and to add a local directory where I will be storing the files I want to have online.</p>\n<h3>3. Code testing</h3>\n<p>After version control, a second building block for profesional development is <strong>testing</strong>. An extensive variety of this is Test driven development. That means: first write the test for a function, after which you can start building the function. I don't go that far for this project, but do include a test Sub at the top of every module.</p>\n<p>I found a complication while building this, as I need to test my code with some <em>private settings</em>. In my case that's the exchange API keys. I don't want those to end up in my Github repository online. So what I do:</p>\n<ul>\n  <li>Create a module that won't be exported to my Github project</li>\n  <li>In that module, create a public Constant:</li>\n</ul>\n<pre><code>Public Const apikey_btce = \"MP3YF9J3\"</code></pre>\n<p>And in the modules for the people who want to use it:</p>\n<pre><code>apikey = \"your api key here\"<br>\n'Remove this line, unless you define 2 constants somewhere ( Public Const apikey_btce = \"the key to use everywhere\" etc )<br>\napikey = apikey_btce</code></pre>\n<p>In this way, tests pass and as long as you don't export your secret module, nobody will have the private settings.</p>\n<h3>4. Export VBA code and import it into a test file</h3>\n<p>So now you have a setup where you can work in the master file, test the code and want to export that code. For this I found various snippets online, the version I use is here: <a href=\"https://pastebin.com/Lhb6yupj\">https://pastebin.com/Lhb6yupj</a>. What this macro does:</p>\n<ul>\n  <li>export all VBA modules that are listed and save them as .bas files in a specified directory</li>\n  <li>import those .bas files into the example file in that same directory</li>\n</ul>\n<h3>5. Push the updated files online</h3>\n<p>So from the master you can export code, but still need to &nbsp;put it online. At that point, the <a href=\"https://desktop.github.com\">Github desktop</a> comes in. What the program does is basically show you the differences in the .bas files between the last version and the current version. Note: the program is looking at the exported files, not at the code inside your Excel file. After adding a short description of the update, it's simply pushing the \"Commit to master\" button and after that at the top \"push\".&nbsp;</p>\n<p><img src=\"https://uloqu.com/assets/github_desktop.png\" width=\"1280\" height=\"720\"/></p>\n<p><br></p>\n<p>So that's how it works for me, hope that this how-to inspires you to share your code. Feedback is welcome in the comments. If you want to go a step further, like importing &amp; exporting VBA code, do check out this project:&nbsp;<a href=\"http://ramblings.mcpher.com/Home/excelquirks/vbagit/gettingstarted\">http://ramblings.mcpher.com/Home/excelquirks/vbagit/gettingstarted</a></p>\n<p><br></p>\n</html>",
      "json_metadata": "{\"tags\":[\"vba\",\"github\",\"development\",\"excel\"],\"image\":[\"https://uloqu.com/assets/excel_to_github.png\",\"https://uloqu.com/assets/github_desktop.png\"],\"links\":[\"https://github.com/krijnsent/\",\"https://github.com/krijnsent/crypto_vba/\",\"https://desktop.github.com/\",\"https://pastebin.com/Lhb6yupj\",\"https://desktop.github.com\",\"http://ramblings.mcpher.com/Home/excelquirks/vbagit/gettingstarted\"],\"app\":\"steemit/0.1\",\"format\":\"html\"}"
    }
  ]
}
steemdelegated 18.318 SP to @beeheap
2017/10/13 16:13:42
delegatorsteem
delegateebeeheap
vesting shares29829.556404 VESTS
Transaction InfoBlock #16298456/Trx 25772631d91ce77261fb6779b17de3de6cc185fd
View Raw JSON Data
{
  "trx_id": "25772631d91ce77261fb6779b17de3de6cc185fd",
  "block": 16298456,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-10-13T16:13:42",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "beeheap",
      "vesting_shares": "29829.556404 VESTS"
    }
  ]
}
beeheapupdated their account properties
2017/08/24 12:40:21
accountbeeheap
memo keySTM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq
json metadata{"profile":{"location":"the Netherlands","profile_image":"https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg","name":"Koen Rijnsent","about":"Blockchain, cryptocurrency & spreadsheets","website":"https://github.com/krijnsent/"}}
Transaction InfoBlock #14854969/Trx 3facdcec723d0ca51c44c3d29110a8b7d56f5bc1
View Raw JSON Data
{
  "trx_id": "3facdcec723d0ca51c44c3d29110a8b7d56f5bc1",
  "block": 14854969,
  "trx_in_block": 16,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-08-24T12:40:21",
  "op": [
    "account_update",
    {
      "account": "beeheap",
      "memo_key": "STM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq",
      "json_metadata": "{\"profile\":{\"location\":\"the Netherlands\",\"profile_image\":\"https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg\",\"name\":\"Koen Rijnsent\",\"about\":\"Blockchain, cryptocurrency & spreadsheets\",\"website\":\"https://github.com/krijnsent/\"}}"
    }
  ]
}
beeheapupdated their account properties
2017/08/24 12:14:36
accountbeeheap
memo keySTM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq
json metadata{"profile":{"location":"the Netherlands"}}
Transaction InfoBlock #14854454/Trx 89e905a4d3113791015e776a150c89021ef571ce
View Raw JSON Data
{
  "trx_id": "89e905a4d3113791015e776a150c89021ef571ce",
  "block": 14854454,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-08-24T12:14:36",
  "op": [
    "account_update",
    {
      "account": "beeheap",
      "memo_key": "STM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq",
      "json_metadata": "{\"profile\":{\"location\":\"the Netherlands\"}}"
    }
  ]
}
steemcreated a new account: @beeheap
2017/08/24 07:56:45
fee0.500 STEEM
delegation57000.000000 VESTS
creatorsteem
new account namebeeheap
owner{"weight_threshold":1,"account_auths":[],"key_auths":[["STM7bChezSnwvjinzrUeW82RoZc5fXu26Dr8UD6vHqZB2aQhwAUWS",1]]}
active{"weight_threshold":1,"account_auths":[],"key_auths":[["STM8N1UTTyh4vZJvh7yBTtp4qfZruwsc1CSfbuQNjUoX8HzutkKFh",1]]}
posting{"weight_threshold":1,"account_auths":[],"key_auths":[["STM7oNdCbfcNbLFJDJ8sKTvefXzmwzwGSZjrsAooXgGtcBzLTbdiL",1]]}
memo keySTM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq
json metadata
extensions[]
Transaction InfoBlock #14849300/Trx bb3121a2b61458faa93f98e1337b39a671ddada0
View Raw JSON Data
{
  "trx_id": "bb3121a2b61458faa93f98e1337b39a671ddada0",
  "block": 14849300,
  "trx_in_block": 12,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-08-24T07:56:45",
  "op": [
    "account_create_with_delegation",
    {
      "fee": "0.500 STEEM",
      "delegation": "57000.000000 VESTS",
      "creator": "steem",
      "new_account_name": "beeheap",
      "owner": {
        "weight_threshold": 1,
        "account_auths": [],
        "key_auths": [
          [
            "STM7bChezSnwvjinzrUeW82RoZc5fXu26Dr8UD6vHqZB2aQhwAUWS",
            1
          ]
        ]
      },
      "active": {
        "weight_threshold": 1,
        "account_auths": [],
        "key_auths": [
          [
            "STM8N1UTTyh4vZJvh7yBTtp4qfZruwsc1CSfbuQNjUoX8HzutkKFh",
            1
          ]
        ]
      },
      "posting": {
        "weight_threshold": 1,
        "account_auths": [],
        "key_auths": [
          [
            "STM7oNdCbfcNbLFJDJ8sKTvefXzmwzwGSZjrsAooXgGtcBzLTbdiL",
            1
          ]
        ]
      },
      "memo_key": "STM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq",
      "json_metadata": "",
      "extensions": []
    }
  ]
}

Account Metadata

POSTING JSON METADATA
profile{"profile_image":"https://cdn.steemitimages.com/DQmRAmDzkbbPMSZKnmaUsCBqH67D3MtB9PTfMCaF7tCSAWs/egg.svg","name":"Re Movedaccount","version":2}
JSON METADATA
profile{"location":"the Netherlands","profile_image":"https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg","name":"Koen Rijnsent","about":"Blockchain, cryptocurrency & spreadsheets","website":"https://github.com/krijnsent/"}
{
  "posting_json_metadata": {
    "profile": {
      "profile_image": "https://cdn.steemitimages.com/DQmRAmDzkbbPMSZKnmaUsCBqH67D3MtB9PTfMCaF7tCSAWs/egg.svg",
      "name": "Re Movedaccount",
      "version": 2
    }
  },
  "json_metadata": {
    "profile": {
      "location": "the Netherlands",
      "profile_image": "https://media.licdn.com/mpr/mpr/shrinknp_200_200/p/1/000/0ef/026/235b88a.jpg",
      "name": "Koen Rijnsent",
      "about": "Blockchain, cryptocurrency & spreadsheets",
      "website": "https://github.com/krijnsent/"
    }
  }
}

Auth Keys

Owner
Single Signature
Public Keys
STM7bChezSnwvjinzrUeW82RoZc5fXu26Dr8UD6vHqZB2aQhwAUWS1/1
Active
Single Signature
Public Keys
STM8N1UTTyh4vZJvh7yBTtp4qfZruwsc1CSfbuQNjUoX8HzutkKFh1/1
Posting
Single Signature
Public Keys
STM7oNdCbfcNbLFJDJ8sKTvefXzmwzwGSZjrsAooXgGtcBzLTbdiL1/1
Memo
STM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq
{
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM7bChezSnwvjinzrUeW82RoZc5fXu26Dr8UD6vHqZB2aQhwAUWS",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM8N1UTTyh4vZJvh7yBTtp4qfZruwsc1CSfbuQNjUoX8HzutkKFh",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM7oNdCbfcNbLFJDJ8sKTvefXzmwzwGSZjrsAooXgGtcBzLTbdiL",
        1
      ]
    ]
  },
  "memo": "STM4xpjHsjGyZ8zWUnrHU27TD4Sb6M58nQkwxQ9D83myUyKnTn1jq"
}

Witness Votes

0 / 30
No active witness votes.
[]