Advertisement
MisterSquishy

PMR Trading Design

Dec 5th, 2016
1,243
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.12 KB | None | 0 0
  1. When terminal interacted with, load "PLEASE WAIT" textbox
  2. Convert mon data to wool lines, null out trade_data.nbt structure, and generate save structure block for encoded data
  3.  
  4. Load saving instructions:
  5.  
  6. * How to Trade *
  7.  
  8. Right click the
  9. structure block
  10. and click SAVE.
  11.  
  12. Once structure saving detected, load structure to fixed location for future integrity check and load next set of instructions:
  13.  
  14. * How to Trade *
  15. 1. Open world save
  16. folder
  17. 2. Open structures
  18. folder
  19. 3. Send partner
  20. trade_data.nbt
  21. 4. Put received
  22. trade_data.nbt
  23. in structures
  24. folder
  25. 5. Quit world and
  26. re-join
  27.  
  28. Pressing B opens a cancel trade dialog
  29. Do you want to \n stop trading?
  30. Yes - Closes trade interaction fully
  31. No - Removes cancel trade dialog and continues presenting how to trade steps
  32.  
  33. After relogging, run integrity check to see if new trade_data.nbt exists and does not match the original
  34. If either condition fails:
  35. Valid trade data
  36. not detected.
  37. Please try again.
  38. Close trade session on a/b
  39. If valid, load initial trade screen with mon data
  40. Cancel closes all trade dialogs
  41. Selecting a mon loads options menu (stats/trade)
  42.  
  43. In options menu
  44. B button returns to mon selection
  45. Stats loads party info screen
  46. Trade loads keypad and code to send to partner; code indicates your selected mon (max 6 codes/player)
  47.  
  48. Codes for partner:
  49. Code 1: ####
  50.  
  51.  
  52. Enter code 1 from
  53. partner:
  54. _______
  55. |_______|
  56.  
  57. 7 8 9
  58. 4 5 6
  59. 1 2 3
  60. <- 0 ED
  61. CANCEL
  62.  
  63. B button deletes characters only
  64. Start button or ED submit the code string
  65. If invalid code:
  66. Invalid code,
  67. please try again.
  68. Returns to code input screen
  69. If valid code:
  70. Load trade text and trade/cancel dialog box
  71. Load code 1 overlay in case player didn't send it to partner before hitting enter
  72. Codes for partner:
  73. Code 1: ####
  74. Cancel returns to mon selection screen
  75.  
  76. Trade/cancel dialog box
  77. Cancel returns to mon selection screen
  78. Trade relaunches code screen, code represents the selected mon combo (max 36 codes/player)
  79.  
  80. Codes for partner:
  81. Code 1: ####
  82. Code 2: ####
  83.  
  84. Enter code 2 from
  85. partner:
  86. _______
  87. |_______|
  88.  
  89. 7 8 9
  90. 4 5 6
  91. 1 2 3
  92. <- 0 ED
  93. CANCEL
  94.  
  95. B button deletes characters only
  96. Start button or ED submit the code string
  97. Cancel returns to mon selection screen
  98. If invalid code:
  99. Invalid code,
  100. please try again.
  101. Returns to code input screen
  102. If valid code:
  103.  
  104. Trade confirmed!
  105.  
  106. Codes for partner
  107. Code 1: ####
  108. Code 2: ####
  109.  
  110. Once both players
  111. see this screen,
  112. press A.
  113.  
  114. -----------------------------------------
  115.  
  116. Could still have a case where one player completes the trade with Code 2 and presses A before giving the second player their code 2, causing one trade to succeed while the other fails.
  117.  
  118. A more secure confirmation method would have each player select trade, generate a new structure block, have players exchange files again, relog, and verify that both structure blocks have trade selected. But requiring 2 relogs is painful, especially given loading times on the world.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement