Advertisement
CloneTrooper1019

Untitled

Aug 3rd, 2014
556
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.67 KB | None | 0 0
  1. Clone's somewhat ridiculously long conversation with stravant.
  2. Why does this keep happening when I talk to admins lol.
  3.  
  4. [8:18:01 PM] Max: Could I request something in your polydraw library?
  5. [8:18:14 PM] Max: If you aren't busy with anything lol.
  6. [8:18:35 PM] Max: I'm looking for a version which draws a Plane rather than just a triangle
  7. [8:18:43 PM] Max: (so like A,B,C,D rather than A,B,C)
  8. [8:19:17 PM | Edited 8:19:30 PM] Max: I wrote a script that parses geometry from the source engine into roblox (using a .vmf file), and Im trying to go about with loading it all.
  9. [8:21:02 PM] Max: Currently Im doing something like
  10. [8:21:09 PM] Max: AC = A:Lerp(C,.5)
  11. [8:21:17 PM] Max: D = B:lerp(AB,2)
  12. [8:21:23 PM] Max: And then drawing two triangles
  13. [8:21:27 PM | Edited 8:21:37 PM] Max: with A>B>C and A>C>D connections.
  14. [8:23:22 PM] Max: I'm learning Geometry this year. But for the most part I understand the concepts of it through some code works of mine.
  15. [10:20:55 PM] Stravant: Why do you need to do any math at all?
  16. [10:21:09 PM] Stravant: Any square is really just two triangles.
  17. [10:21:23 PM] Stravant: If you want to draw the quad ABCD
  18. [10:21:42 PM] Stravant: then just draw ABC and ACD
  19. [10:22:07 PM] Stravant: The quads you're getting out from the source engine aren't flat anyways
  20. [10:35:11 PM] Max: https://pbs.twimg.com/media/BuKhhe2CcAAZMeH.png
  21. [10:35:17 PM] Max: I got it to load geometry.
  22. [10:36:21 PM] Max: Still a few issues on the wedge sides, but it works pretty well.
  23. [10:37:13 PM] Max: Not sure if I can pull off displacement geometry though.
  24. [10:37:53 PM] Max: The file format is basically this.
  25. [10:37:53 PM] Max: http://pastebin.com/ib6RtFDk
  26. [10:37:57 PM] Stravant: The geometry module is probably not what you want for this, you'll have to modify it a bit
  27. [10:38:06 PM] Stravant: it's meant for drawing debug stuff
  28. [10:38:10 PM] Max: The script I wrote parses this stuff into a table.
  29. [10:38:16 PM] Max: And draws the planes from there.
  30. [10:38:28 PM] Stravant: You'll want to offset the drawn wedgeparts by 1/2 the thickness
  31. [10:38:36 PM] Stravant: so that they actually represent the faces well
  32. [10:38:49 PM] Stravant: where right now they're off by 0.1 because they have 0.2 thickness
  33. [10:39:15 PM] Max: I can probably add a wedge mesh to do that.
  34. [10:39:26 PM] Max: This is the current version of the script.
  35. [10:39:27 PM] Max: http://pastebin.com/rzHKwg5H
  36. [10:39:32 PM] Stravant: That's not a good solution
  37. [10:39:35 PM] Max: Its a bit messy since Im not a pro at string patterns.
  38. [10:39:37 PM] Stravant: adding an offset is easy and better
  39. [10:39:50 PM] Max: For geometry that is inwards?
  40. [10:40:26 PM] Max: rawFile is a ModuleScript which returns the vmf file as a string.
  41. [10:41:07 PM] Max: And that example vmf file I posted above loads a 4x4x4 polygon cube into the map.
  42. [10:41:40 PM] Max: 16 units in Source are worth about a stud in roblox.
  43. [10:42:43 PM] Stravant: Roblox is scaled at 20 studs = 1 meter
  44. [10:43:17 PM] Stravant: That's where the 196.2 comes from, 196.2 = 20 studs / meter *9.81
  45. [10:44:12 PM] Max: I used 1/16 because 16 units in Hammer is supposed to be 1 ft in length, and a robloxian's foot is 1 stud wide
  46. [10:44:46 PM] Max: https://developer.valvesoftware.com/wiki/VMF
  47. [10:46:38 PM] Stravant: That's why Roblox's gravity feels odd
  48. [10:46:51 PM] Stravant: because your character is supposed to feel like an action figure at that gravity scale
  49. [10:47:06 PM] Stravant: of 20 studs = 1 meter
  50. [10:47:21 PM] Stravant: Which means your character is about 25cm tall
  51. [10:47:27 PM] Stravant: gravity speaking
  52. [10:47:50 PM] Max: I might use that measurement if I order a 3D print of my character.
  53. [10:49:43 PM] Stravant: function drawPlane(plane,parent)
  54. local A,B,C = unpack(plane)
  55. local xAxis = (A-B)
  56. local zAxis = (C-B)
  57. local topAxis = xAxis:Cross(zAxis)
  58. --
  59. local part = Instance.new('Part', parent)
  60. part.FormFactor = 'Custom'
  61. part.Size = Vector3.new(xAxis.magnitude, 1, zAxis.magnitude)
  62. part.CFrame = CFrameFromTopBack(B + xAxis/2 + zAxis/2 - topAxis/2, topAxis.unit, zAxis.unit)
  63. end
  64. [10:49:50 PM] Stravant: There's a better drawPlane
  65. [10:49:51 PM] Max: Oooh thanks.
  66. [10:50:10 PM] Stravant: Where you can find "CFrameFromTopBack" by googling it
  67. [10:50:25 PM] Max: I think its inside your module.
  68. [10:50:33 PM] Stravant: Yeah, you can find it in a lot of places
  69. [10:50:43 PM] Max: What exactly is that doing?
  70. [10:51:01 PM] Stravant: CFrameFromTopBack takes a point, the "top" unit vector, and the "back" unit vecotr
  71. [10:51:08 PM] Stravant: and makes a CFrame from it
  72. [10:51:15 PM] Max: Ah I see.
  73. [10:51:31 PM] Stravant: The rest should be obvious if you know what Cross product does
  74. [10:51:34 PM] Stravant: do you?
  75. [10:51:49 PM] Max: I don't remember it off the back, but I have used it before.
  76. [10:52:03 PM] Stravant: Just remember:
  77. [10:52:26 PM] Stravant: Cross product takes two vectors and finds one perependicular to both of them
  78. [10:52:43 PM] Stravant: and Dot product finds the projection of one vector onto another
  79. [10:52:57 PM] Max: Yeah, I remember the perpendicular part.
  80. [10:53:07 PM] Stravant: that is, Cross product is effectively "adding" a dimension, and Dot product is "removing" a dimention
  81. [10:53:28 PM] Max: I guess while we're on the topic of geometry.
  82. [10:53:39 PM] Stravant: Since Cross product projects out into a third dimension, while dot procuct projects down into one dimension
  83. [10:53:45 PM] Max: I was trying to create an outline effect
  84. [10:53:52 PM] Max: By extracting the verticies of a part.
  85. [10:54:17 PM] Max: And projecting them using ScreenSpaceToWorld with the depth being the magnitude between the coordinateframe and the object.
  86. [10:54:49 PM] Max: I got it to work, but its frequently redrawing triangles at probably 30 FPS.
  87. [10:54:58 PM] Max: So if it comes down to a high poly object
  88. [10:55:07 PM] Max: Like the head mesh.
  89. [10:55:26 PM] Max: It will get extremely laggy as its trying to draw triangles for each face based on the camera angle.
  90. [10:55:59 PM] Stravant: Yeah, that would give you some trouble.
  91. [10:56:05 PM] Stravant: Normally the way games do it
  92. [10:56:12 PM] Stravant: is to just render the object twice
  93. [10:56:18 PM] Stravant: once with a different color
  94. [10:56:24 PM] Stravant: and a depth buffer value slightly greater
  95. [10:56:52 PM] Max: Here's the script if you're interested :P
  96. [10:56:52 PM] Max: http://pastebin.com/XZFUGzT7
  97. [10:56:59 PM] Max: This was from a few weeks ago.
  98. [10:57:07 PM] Max: So the drawTriangle function is old.
  99. [10:57:38 PM] Max: I try to reduce lag by recycling wedges rather than just frequently creating new ones.
  100. [10:57:52 PM] Max: I think a better alternative would be to use the 2D Locations and try to draw GUI lines between them.
  101. [10:58:18 PM] Max: However, Z Buffering would be in the play of that.
  102. So i'd have to figure out a way to convert a location on a billboardgui
  103. [10:58:23 PM] Max: from the players screen, to the world location.
  104. [10:58:28 PM] Max: On the billboardgui
  105. [10:58:38 PM] Stravant: "halo:ClearAllChildren()" well, you can easily get 4x+ performance increase by not clearing and remaking the parts every time
  106. [10:58:54 PM] Stravant: You should be using an "object pool"
  107. [10:58:57 PM] Max: Wait.
  108. [10:58:59 PM] Max: I had one
  109. [10:59:03 PM] Max: Its gone apparently.
  110. [10:59:15 PM] Max: I was object pooling the wedges.
  111. [10:59:50 PM] Stravant: If you haven't looked at it yet you should take a look at the "Stravant's Lightning" gear I made
  112. [10:59:57 PM] Stravant: It's a good example of working under filtering
  113. [11:00:03 PM] Max: I do use filtering in Murder.
  114. [11:00:12 PM] Stravant: it draws local effects on each client and works optimally under both filtering and non-filtering
  115. [11:00:18 PM] Max: Ah.
  116. [11:00:30 PM] Max: Heres an example of what my script would generate.
  117. [11:00:31 PM] Max: https://pbs.twimg.com/media/BsYjvn7CQAEVuEX.png
  118. [11:00:39 PM] Max: Note that I paused the script because it lagging horribly.
  119. [11:00:49 PM] Max: At the right angle, it would appear that the character has a green outline around him.
  120. [11:01:09 PM] Max: However, the head is generating unbelievable amounts of triangles.
  121. [11:01:30 PM] Stravant: You can still do the alternative hack of using negative scale by the way
  122. [11:01:37 PM] Max: I know.
  123. [11:01:41 PM] Max: But the negative meshes overlap with eachother.
  124. [11:01:49 PM] Max: At least, with what I've tried.
  125. [11:02:02 PM] Max: Somewhere deep in my twitter I have a picture of it.
  126. [11:03:24 PM] Max: Here we are.
  127. [11:03:24 PM] Max: https://pbs.twimg.com/media/BiUqH4WCQAA4E02.png:large
  128. [11:03:59 PM] Max: I could probably offset the parts using the direction of the camera.
  129. [11:04:10 PM] Max: And maybe that would work? Not sure though.
  130. [11:04:21 PM] Max: Apologies if I'm distracting you or anything.
  131. [11:04:23 PM] Max: I talk too much, haha.
  132. [11:05:31 PM] Stravant: Not really possible to fix that
  133. [11:05:44 PM] Stravant: Without manually keeping track of a "depth buffer" of sorts
  134. [11:05:50 PM] Max: ^^^^
  135. [11:05:55 PM] Stravant: what you could do to fix it:
  136. [11:06:09 PM] Max: Would it actually be impossible to add custom zbuffering support?
  137. [11:06:14 PM] Stravant: Project each of the triangles that you render onto the camera's plane.
  138. [11:06:23 PM] Stravant: and don't render them right away
  139. [11:06:29 PM] Stravant: and intersect them with the existing triangles
  140. [11:06:42 PM] Stravant: "cutting away" the parts where there's a closer triangle
  141. [11:07:04 PM] Stravant: Actually, you need to cut away the closer one
  142. [11:07:21 PM] Max: I'll play with some of these ideas later.
  143. [11:07:32 PM] Max: I made the halo effect for Murder actually.
  144. [11:07:35 PM] Stravant: But, I don't think anyone other than one of the other interns currently has arbitrary triangle cutting code on Roblox
  145. [11:07:37 PM] Max: The loot objects in the game that glow green
  146. [11:07:45 PM] Max: In the garry's mod version, they have a green glow outline.
  147. [11:08:02 PM] Stravant: If you want an awesome hack try to get this worknig:
  148. [11:08:02 PM] Stravant: https://www.youtube.com/watch?v=Q9lh6cGLOMM&list=UU3M5LYwMBhjkGIKEEjdFwig
  149. [11:08:03 PM] Max: So I was trying to see if I could potentially make that happen on roblox.
  150. [11:08:20 PM] Max: Oh my.
  151. [11:08:29 PM] Max: I feel like I know how you did that.
  152. [11:08:38 PM] Max: Well, probably not.
  153. [11:08:47 PM] Stravant: Hint: BillboardGuis + AllwaysOnTop
  154. [11:08:50 PM] Max: Is it a pixel thing? Or are you using some billboardgui rendering glitch.
  155. [11:08:58 PM] Max: Oh.
  156. [11:09:01 PM] Max: Hm.
  157. [11:09:24 PM | Edited 11:09:27 PM] Max: Are they ever going to add 3D rendering for frames?
  158. [11:09:41 PM] Max: I had an idea of like a CameraFrame.
  159. [11:09:57 PM] Max: Where you could store objects inside of a frame, and it would render objects in the frame using the Camera angles specified.
  160. [11:10:36 PM] Stravant: If you have one BillboardGui on a part really close to you with StudsOffset = Vector3.new(0, 0, -large), and AlwaysOnTop = false, it ends up behind the floating model you see.
  161. But if you now add a BillBoardGui on that model, with AllwaysOnTop = true, it has to end up behind the other BillboardGui, but on top of the object in question
  162. [11:10:47 PM] Stravant: so as an end result it ends up "clipping out" that region
  163. [11:11:22 PM] Max: I feel like it could be possible to create an outline effect using that.
  164. [11:11:47 PM] Stravant: Basically, AlwaysOnTop = true means that the BillBoardGui has to be on top of _all_ parts, even if they are in front of other GUIs which are behind that one
  165. [11:11:48 PM] Max: Using like an inverted version of the model to expose just a small bit of the billboardgui
  166. [11:11:58 PM] Stravant: Unfortunately it won't work well for outlines
  167. [11:12:00 PM] Stravant: but, nice try
  168. [11:12:07 PM] Max: I mean like
  169. [11:12:10 PM] Stravant: It will work well for "greyed out" 3D things
  170. [11:12:16 PM] Stravant: or other overlay effects
  171. [11:12:56 PM] Max: So I can't hide and show certain portions of the billboard gui using this effect?
  172. [11:13:32 PM] Stravant: Hard to explain but you won't be able to get the stacking right for an outline if you actually work it out
  173. [11:13:39 PM] Max: Alright.
  174. [11:13:47 PM] Max: I might just go with the 2D Option.
  175. [11:14:01 PM] Max: Where I just draw it on the screen and only show it if there is nothing in the way of the object.
  176. [11:14:53 PM] Stravant: http://www.roblox.com/%C3%AF-Gear-Testing-%C3%AF-place?id=17039935
  177. [11:14:59 PM] Stravant: Go there and try out the lightning gear
  178. [11:15:10 PM] Max: I played with it when it came out actually.
  179. [11:15:21 PM] Stravant: Have you looked at the code?
  180. [11:15:37 PM] Max: I'll look at it now.
  181. [11:15:40 PM] Max: [Saturday, August 02, 2014 12:14 PM] Max:
  182.  
  183. <<< Why not change your head to that old red hex you had in 2009? Lol.
  184. That lightning gear is op btw. Nice job.
  185. http://t7.rbxcdn.com/08622ab848d5c0682954b8f0c81e54da
  186. [11:15:59 PM] Stravant: Oh, missed that. As for the head question
  187. [11:16:06 PM] Stravant: why would I, it looks awful
  188. [11:16:25 PM] Max: I was just curious I guess.
  189. [11:16:46 PM] Max: I was around in early 2009.
  190. [11:16:54 PM] Stravant: As for the code: The spinning banners effect is separated out as a nice speparate class that you can use in your other code.
  191. [11:16:58 PM] Max: I remember that old transparent shirt bug you did.
  192. [11:17:38 PM] Stravant: Same with the lightning but that's a bit less useful of an effect
  193. [11:17:47 PM] Stravant: and the "blur" but that's even less useful of a one
  194. [11:18:01 PM] Stravant: but, the spinning aura is a really useful one
  195. [11:18:15 PM] Stravant: the texture is also white so that you can vertexcolor it to whatever color you want
  196. [11:18:29 PM] Stravant: I basically made the whole thing a gold-mine of useful tidbits
  197. [11:18:43 PM] Max: Its really cool. I wish I could say more than that, but I'm not sure what else to say. Haha.
  198. [11:19:03 PM] Max: At some point, maybe you should create a proper RbxGear library.
  199. [11:19:03 PM] Max: https://github.com/ROBLOX/Core-Scripts/blob/master/Libraries/RbxGear.lua
  200. [11:19:08 PM] Max: Because at the moment, its just foobar.
  201. [11:19:21 PM] Max: I'm thinking about messing with it myself.
  202. [11:19:27 PM] Max: Maybe some animation registration and handling stuff.
  203. [11:19:33 PM] Max: Templates for creating ranged weapons
  204. [11:19:36 PM] Max: Other things like that.
  205. [11:19:37 PM] Stravant: I always try to but I can never get something I'm satisfied enough with to publish
  206. [11:19:47 PM] Stravant: I've made a couple of attempts
  207. [11:20:11 PM] Stravant: It's hard to write it in a way that works well with all the client / server interaction
  208. [11:20:18 PM] Max: Hm.
  209. [11:20:22 PM] Stravant: and is still easy to use
  210. [11:20:34 PM] Stravant: each of those alone is easy to do, but they're hard to get at the same time
  211. [11:21:00 PM] Stravant: I actually made a gear library for some of my own gear
  212. [11:21:02 PM] Max: The current game I'm working on
  213. [11:21:04 PM] Max: The Stalker 2
  214. [11:21:12 PM] Max: Uses a module scripted weapon system
  215. [11:21:25 PM] Max: I'll pastebin it real quick lol.
  216. [11:21:31 PM] Max: But basically
  217. [11:21:43 PM] Max: The module is supposed to return a table
  218. [11:21:54 PM] Max: With some properties on it for controlling the weapon's firing stuff.
  219. [11:22:00 PM] Max: Like the Recoil
  220. [11:22:06 PM] Max: The reload
  221. [11:22:12 PM] Max: How it should handle the primary fire
  222. [11:22:18 PM] Max: Other things like that.
  223. [11:22:28 PM] Max: http://pastebin.com/4XbPN49a
  224. [11:22:59 PM] Max: If I was to write RbxGear, I'd probably do it in a similar fashion as this.
  225. [11:23:20 PM] Max: The weapon parameter for SWEP:OnFire() is a library for doing stuff to the weapon.
  226. [11:24:15 PM] Stravant: That would probably be fine but I'm not satisified with something so unflexible
  227. [11:24:36 PM] Stravant: If I'm writing it it has to be general enough that it could cover 90%+ of everything that people would want to do
  228. [11:24:46 PM] Max: Well I suppose my SWEP is a bad example
  229. [11:25:00 PM] Max: I'd include a lot more controls and such.
  230. [11:25:06 PM] Max: This is just a template for a gun afterall.
  231. [11:25:13 PM | Edited 11:25:17 PM] Max: I'm not designing it to suddenly become a wizard staff.
  232. [11:25:19 PM] Stravant: Works fine for a game with pretty fixed classes of behavior
  233. [11:25:37 PM] Stravant: but, that sort of system needs a bit more careful design for gear
  234. [11:25:45 PM] Stravant: which have a lot of pretty off the wall effects
  235. [11:26:06 PM] Stravant: Though, we probably should just do something like that, because it would cover at least 50% of the gear.
  236. [11:26:15 PM] Stravant: the genericish Guns and Swords etc
  237. [11:26:33 PM] Stravant: But, I'm a perfectionist in API design
  238. [11:26:47 PM] Stravant: Case and point in PlayerDataStore
  239. [11:26:52 PM] Stravant: that one is pretty much perfect
  240. [11:26:58 PM] Max: Still works well.
  241. [11:27:14 PM] Max: I'm using it on top of google analytics to record puchases, errors, exploits, and other things in Murder.
  242. [11:27:36 PM] Stravant: Yeah, but it took more than a day to write for a pretty simple API. If I tried to get a similarly good API for a gear lib it would probably take me about a month to finish
  243. [11:27:55 PM] Max: Well, you already have some pretty good code in your previous gears.
  244. [11:28:06 PM] Max: Such as the SpotWeld.
  245. [11:28:22 PM] Stravant: Maybe that's one of the gearlib ones? There is my own gearlib in there
  246. [11:28:45 PM] Stravant: but, that one's too complex and doesn't really simplify the cases that it needs to simplifiy enough
  247. [11:28:58 PM] Stravant: Which is why I didn't even use it much
  248. [11:29:02 PM] Stravant: only for a dozen or so gear
  249. [11:29:10 PM] Max: At some point, I'd like to make gear as like a volunteer thing.
  250. [11:29:22 PM] Max: Though I'm not sure if sorcus trusts my time management.
  251. [11:29:32 PM] Max: I'm one of those "it'll be done when its done" guys.
  252. [11:29:38 PM] Stravant: Or your production cabability.
  253. [11:30:07 PM] Stravant: Your code is "good enough", but not bulletproof
  254. [11:30:16 PM] Max: Still, some of the stuff that LuckyMaxer is creating, I could probably create.
  255. [11:30:33 PM] Max: Me and him are even joking about me making a gear and him submitting it, though we probably won't.
  256. [11:30:43 PM] Max: Assuming he only gets like 2 hours to make gear.
  257. [11:30:50 PM] Max: Er
  258. [11:30:54 PM] Max: He has gear done in 2 hours.
  259. [11:31:02 PM] Max: When sorcus sends him meshes I think.
  260. [11:31:41 PM] Stravant: Of course, you might spend just 30 minutes on the same gear
  261. [11:32:08 PM] Stravant: When he spends a couple of hours on even a pretty simple gear that's because he makes sure it's 100% working before we get it
  262. [11:32:24 PM] Stravant: Which is more than we can say for anyone else we've had try making gear
  263. [11:33:07 PM | Edited 11:33:24 PM] Stravant: No-one on the outside has quite had the right combination of reliable speed and reliable result
  264. [11:33:56 PM] Max: Yeah.
  265. [11:34:06 PM | Edited 11:34:12 PM] Stravant: For instance, it took me 3 8 hour days to get the lightning gear fully working
  266. [11:34:31 PM] Max: If I was to make a gear as advanced as yours, it would probably take me roughly the same time.
  267. [11:34:42 PM] Max: It just depends on the scale I guess.
  268. [11:34:56 PM] Stravant: I could probably have pushed it out there in just 10 or so hours
  269. [11:35:04 PM] Stravant: but, I had to spend a lot of time testing that one
  270. [11:35:23 PM] Stravant: Because, with the local views stuff there's a lot of room for annoying edge cases
  271. [11:35:30 PM] Max: Deadlines bother me.
  272. [11:36:04 PM] Max: I prefer perfection and quality in a final product than frequent quantities of products made in a shorter time.
  273. [11:36:06 PM] Max: Something like that.
  274. [11:36:24 PM] Max: loleris made his Murder game in like a week.
  275. [11:36:33 PM] Max: He kept joking at me that he was making it, and I didn't think he was serious at first.
  276. [11:36:35 PM] Stravant: Part of coding is knowing what you can get done to perfection before the deadline
  277. [11:36:39 PM] Max: And then suddenly, there are 6000 people in his game.
  278. [11:36:52 PM] Max: Yet I put 3 months of work into perfecting my game, and I still have trouble reaching the front page.
  279. [11:37:05 PM] Stravant: That's because it feels worse, even if it looks better
  280. [11:37:15 PM] Stravant: rapid prototyping does a lot
  281. [11:37:57 PM] Max: The main reason it took me long to create was because of school, and the fact that I was developing an entire engine for the game to run on, and to potentially be used for future games.
  282. [11:38:14 PM] Max: It was a rough testing period on my part.
  283. [11:38:21 PM] Stravant: If you really care about the frontpage you have to embrace the YAGNI principle:
  284. [11:38:29 PM] Stravant: You Ain't Gonna Need It
  285. [11:38:44 PM] Stravant: Write like there's no tomorrow and worry about fixing it later
  286. [11:38:54 PM] Stravant: That's the reason I never finish anything
  287. [11:38:56 PM] Stravant: because I can't do that
  288. [11:39:09 PM | Edited 11:39:18 PM] Max: "I don't always debug my code, but when I do, I do it on production" - Some t-shirt I have.
  289. [11:39:23 PM] Stravant: That's a separate issue though
  290. [11:39:39 PM] Max: Oh.
  291. [11:39:46 PM] Max: I think I misintepreted what you said there lol.
  292. [11:39:49 PM] Stravant: YAGNI is just saying that you should write exactly the code that you need to implement what you want
  293. [11:40:01 PM] Stravant: and not worry about what you might need to do in the future
  294. [11:40:08 PM] Stravant: because you probably won't end up doing those things
  295. [11:40:39 PM] Stravant: The reason being that it's very hard to anticipate what will make a game fun
  296. [11:40:46 PM] Stravant: and which parts you will want to extend
  297. [11:41:02 PM] Max: Man. How long have we been talking. Like an hour or two now?
  298. [11:41:07 PM] Max: Lol.
  299. [11:41:29 PM] Max: Shall we call it a day with the conversation for now?
  300. [11:41:33 PM] Max: It was a good talk I guess.
  301. [11:41:53 PM] Stravant: One more thing:
  302. [11:41:57 PM] Stravant: Have you played this yet:
  303. [11:41:58 PM] Stravant: http://www.roblox.com/Love-Notes-A-Card-Game-Pre-release-access-place?id=158368357
  304. [11:42:14 PM] Max: No but I saw it yesterday in Shedletsky's favorites.
  305. [11:42:19 PM] Stravant: Try it out
  306. [11:42:19 PM] Max: Maybe I'll try it.
  307. [11:42:22 PM] Max: Mkay.
  308. [11:42:25 PM] Stravant: good example of absolutely perfect execution
  309. [11:42:33 PM] Stravant: It's a reasonably sized project
  310. [11:42:38 PM] Stravant: probably about 3000 lines of code to do
  311. [11:42:42 PM] Stravant: but, it's done perfectly
  312. [11:42:49 PM] Stravant: and it's actually a fun game
  313. [11:43:03 PM] Stravant: Once it's done and not under a paywall
  314. [11:43:11 PM] Stravant: that game will 100% be on the frontpage
  315. [11:43:20 PM] Max: Yeah I'll definitely try it. I'm not always into card games, but I'll take your word for it.
  316. [11:43:31 PM] Stravant: Well, it's a copy of a real card game
  317. [11:44:06 PM] Stravant: so, it's not just a bad ruleset someone made up without tesitng it
  318. [11:44:26 PM] Max: My murder game started as a mirror of the gmod version
  319. [11:44:32 PM] Max: https://www.youtube.com/watch?v=rcCxWEN4Cas
  320. [11:44:36 PM] Max: You don't actually have to watch this lol
  321. [11:44:41 PM] Max: But you can see the similarities
  322. [11:44:48 PM] Stravant: I would say it's on a similar level of polish to your murder game's UI
  323. [11:44:49 PM] Max: I put a lot of work into making it accurate.
  324. [11:45:21 PM] Stravant: It also clearly uses some library elements from other people
  325. [11:45:35 PM] Stravant: which is something I haven't seen anyone else really doing
  326. [11:45:41 PM] Max: Yeah. its a very simple gamemode.
  327. [11:45:45 PM] Stravant: Such as anaminu's scrollbar
  328. [11:45:45 PM] Max: Its fun otherwise.
  329. [11:46:02 PM] Max: Garry's Mod gamemodes are made in Lua.
  330. [11:46:18 PM] Max: Its different API, and you have to divide stuff into modules in order to keep your sanity.
  331. [11:46:28 PM] Max: But I actually ported some stuff over.
  332. [11:46:57 PM] Max: And Im talking too much again, ahhhh.
  333. [11:47:02 PM] Max: I'll leave you with this lol.
  334. [11:47:03 PM] Max: https://github.com/mechanicalmind/murder
  335. [11:47:04 PM] Max: See ya.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement