My first impressions, suggestions and a few questions....
Howser
UK Join Date: 2010-02-08 Member: 70488Members, NS2 Playtester, Squad Five Blue, Reinforced - Shadow, WC 2013 - Shadow, Subnautica Playtester, Retired Community Developer
Firstly I think this a great idea! I've been curious to see what the 'spark 2' project was for a long time now and now it's revealed I personally couldn't be happier with where you guys seem to be going with this. I always enjoyed making content more than playing so for me it's very exciting stuff!
That said when I first started reading about it I was concerned it would end up (from a marketing position) in an awkward place; Garry's mod offers silly fun physics and game experimentation already and engines like unreal 4 offering a powerful, affordable platform for the more ambitious/serious developers how would future perfect fit in!?! But After some further reading and actually trying the thing out I see how my original position was wrong. It's very much it's own beast; I get the feeling future perfect is going to be much stronger platform for game design experimentation and education rather than silly videos or full on game development (though I imagine we'll see plenty of both too).
I've always wanted to learn how to do scripting but its quite an intimidating prospect; Having a 'game' built around the concept of making games makes it a lot more appealing to try. So I'm going to try follow all the tutorials and see where that gets me. I'm half way through the scripting one and spent a short time just messing around with random stuff; only scratched the surface really. What I'd like to see is all the resources and tutorials brought into the game... Holding a certain key and hovering the mouse over stuff to bring up relevant tutorial videos/help documents is a great feature z brush uses; get the information you want in the place where you want it.
The second most exciting thing is an engine that skips the pain of of getting content in-game. Speaking from my own experience (on source, NS2 and even unreal 4) when I'm in a creative mood nothing breaks your flow like spending 20 minutes exporting, writing material and compile files, creating folders, compiling then loading the game just to see how a simple static prop looks. Having the drag and drop work flow and unified editor/engine is a great move; unreal 4 has smoothed it out a a lot but suffers from the problem of being overly complex; its intuitive sure but with so many options and features I always find myself getting caught in the trap of fiddling with stuff that doesn't really need to be changed and can be just as detrimental to your flow as more archaic engines. So keeping the entire process of getting content in-game.....Well, in-game and without any fluff is going to really empower a lot of people to just focus on making fun content.
What are the plans for the material/shader systems? There's only a handful of shaders I've ever used for NS2. All I want to do is select the model, name it, select a shader then drop the maps in the relevant boxes with a live preview of the material (or materials) on the model. No messing around with nodes or word documents please... a man can dream.
Is there any plans for adding oculus rift support? there's a lot of people looking to make experimental/gimmicky games in that space (myself included), it might be a nice market to draw on.
I'll stick with it and will give some much more informed feedback once I've actually figured the basics out
That said when I first started reading about it I was concerned it would end up (from a marketing position) in an awkward place; Garry's mod offers silly fun physics and game experimentation already and engines like unreal 4 offering a powerful, affordable platform for the more ambitious/serious developers how would future perfect fit in!?! But After some further reading and actually trying the thing out I see how my original position was wrong. It's very much it's own beast; I get the feeling future perfect is going to be much stronger platform for game design experimentation and education rather than silly videos or full on game development (though I imagine we'll see plenty of both too).
I've always wanted to learn how to do scripting but its quite an intimidating prospect; Having a 'game' built around the concept of making games makes it a lot more appealing to try. So I'm going to try follow all the tutorials and see where that gets me. I'm half way through the scripting one and spent a short time just messing around with random stuff; only scratched the surface really. What I'd like to see is all the resources and tutorials brought into the game... Holding a certain key and hovering the mouse over stuff to bring up relevant tutorial videos/help documents is a great feature z brush uses; get the information you want in the place where you want it.
The second most exciting thing is an engine that skips the pain of of getting content in-game. Speaking from my own experience (on source, NS2 and even unreal 4) when I'm in a creative mood nothing breaks your flow like spending 20 minutes exporting, writing material and compile files, creating folders, compiling then loading the game just to see how a simple static prop looks. Having the drag and drop work flow and unified editor/engine is a great move; unreal 4 has smoothed it out a a lot but suffers from the problem of being overly complex; its intuitive sure but with so many options and features I always find myself getting caught in the trap of fiddling with stuff that doesn't really need to be changed and can be just as detrimental to your flow as more archaic engines. So keeping the entire process of getting content in-game.....Well, in-game and without any fluff is going to really empower a lot of people to just focus on making fun content.
What are the plans for the material/shader systems? There's only a handful of shaders I've ever used for NS2. All I want to do is select the model, name it, select a shader then drop the maps in the relevant boxes with a live preview of the material (or materials) on the model. No messing around with nodes or word documents please... a man can dream.
Is there any plans for adding oculus rift support? there's a lot of people looking to make experimental/gimmicky games in that space (myself included), it might be a nice market to draw on.
I'll stick with it and will give some much more informed feedback once I've actually figured the basics out
Comments
The plan is to make FP appeal to several 'tiers' of players and the tier that's currently the most finished is the most technical one. We'll be fleshing out the higher level tiers over the coming months. Having the guides integrated into the game somehow is definitely something we talked about - we want to make as many things discoverable in-game as possible.
I'll let Max talk about the material system but as the team's unhinged VR enthusiast it is my personal mission to have FP work well in Rift .
Glad you like it so far!
-D
Got a few suggests (that you've already probably thought of) and this seems like the best place to post them.
* A proper colour picker or at least sliders for the spec/diffuse material editor, feels very clunky to input values but I do love the feature very handy if a little tricky to get stuff perfect without a slicker adjustment method
* Alpha channel 'strength' slider would also be nice mainly to adjust gloss or illumination
* A easy way to select a collision mesh rather than auto generating it and a way to preview it.
* Scaling models. you mention a radius gizmo on trello... I assume that is going to be the scale tool?
*and one big one... a terrain system, I imagine this will be a lot of work but I think it will be worth it. Just something to plug the models into.
A proper color picker is planned. Dushan is currently working on the collision editor which will allow you to customize all of that stuff through the GUI when you are in the model editor.
Run-time scale is something we've been hesitating on for a while (you can currently scale the model at build time). The reason we've been hesitating is that it tends to complicate physics/collision, at least when you get into non-uniform, off axis or negative scaling. It does seem like it would be really handy though, so what we're probably going to do is support uniform scaling (i.e. same amount along all three axes).
Terrain editing is an interesting one. I think it would be pretty nice to have, but I'm not sure where it should lie in terms of the priorities or the specific features. So feedback is very helpful in determining those.
I'm currently working on a cartoon style art set where everything's made out of plasticine and cardboard... intentionally crappy looking if you like...hopefully it'll end up quite comical too.
If's actually something I've wanted to do for a long time but in the past it's been too painful to spend longer getting a model in-game than actually modelling it.
I'm not sure about the game or even the themes yet, hopefully that'll emerge organically. Right now it's just a of a nice way to get back into modding and learn the engine without spending any time getting bogged down making simple props. So my suggestions are based purely off making this sort of thing and might not be as relevant for others. I can make do without them anyhow.
I also noticed the colour value entries for the sky light was broken with the last patch. not sure if that's a known bug.
Those models look great!
Or at least a geometry editing system like what was present in Spark 1.0 with a more robust displacement tool. I figure if you're going to make a terrain system, this would be a good way of doing it, and then why not make it as flexible as its predecessor?
A simple terrain editor gives you something to plant the models into so you don't have to make sure everything is seamlessly aligned in more organic scenes.
Yea that'd work too... I guess...
1. Bug: non-ascii chars in steamusername are not displayed. if the whole username is non--ascii FP just says "'s Game". options/name field appears empty, but it is not. writing into options/name appends the username to the non-ascii username in Steam\userdata\<steamid>\282370\remote\user_options.txt i.e. player-name="<unicodechars>Brute"
2. Remark: difference between edit mode and inspect mode is not clearly communicated (visually)
3. Bug: editor.html says "opening the Asset Browser with the A button", but doesnt work
4. Bug: docs mention %appdata%/Pistachio multiple times
5. Bug: rotation tool implies continous rotation even when rotation snaps to 90°. tried to rotate a light and nothing happend. took me longer than I am willing to admit until i found out what's going on
6. Remark: is there any reason why rotation of lights should snap?
7. Feature Request: rotation should snap every 15° or 45°
8. Bug: rotation sometimes snaps to 89.9999, hard to reproduce
9. Feature Request: start world with endless plane to circumvent constant falling of the map
10. Bug: heavy display glitches after falling for a time
11. Bug: i.e. Automator of Zipline Generator has 2 Fields "End Point", one collapses, one doesn't
12. Q: How to change the background image?
13. Bug: collapsed component editor (just a black bar) is hard to see against world with no lights (also black)
14. Feature Request: use mouse wheel to change numeric values in input fields (only if they have focus!!! in ns2 options they change when hovering, making it hard to scroll)
15. Bug: teamA vs team1 ?
16. Feature Request: set force direction with gizmo
17. Feature Request: set box extends (i.e. game bounds) with gizmo
18. Remark: i know it's gaming industry standard but I find y=upwards confusing
19. Feature Request: it's hard to guess the location of wireframes (i.e. game bounds) -> highlight where surface intersects objects
20. Remark: Gamebounds - default values for extends to conservative
21. Remark: Player spawner - Player blueprint should default to avatar (?)
22. Remark: Player spawner - ignoreTag1/2 not used anywhere (?)
23. Bug: Holding Alt before dragging the gizmo -> weird things happen. holding alt before clicking is fine
24. Bug: force applied by collision component is not constant, depends on how far you enter the collision geometry (bad for portal like jump pads). I guess the force is applied as long as sth is in the collision geometry, adding up momentum. Need a way to apply force exactly once (script?)
25. Feature Request: Upper left corner should not just say new, but new world or sth.
26. Bug: F5 should always work, especially if the component editor has the focus
27. Feature Request: clickable button to switch from edit mode back to play mode
28. Bug: opening the stack blueprint and repeatedly writing 0,<del>,0,<del> into the y component of the size field moves the origin
29. Q: What does ABBox stand for? box between points A and B? why not overloaded Box()?
30. Bug: when opening a blueprint (doubleclick) the component editor is collapsed and cannot be rolled out, although the entity is selected. selecting it again fixes this. only happens when component editor is collapsed (i.e. after opening a fresh editor session)
31. Q: why is the component view even collapsable in the first place? it's not collapsable in the model edit mode
32. Feature Request: different symbol for blueprints with hide_in_editor=true to make it clear why they don't show up under the blueprints filter? maybe white or small overlay (closed eye)?
33. Feature Request: right pane should have a tooltip on mouse hover, to display file location (at least for scripts)
34. Remark: only found out that the material icon symbolizes .material files after looking into the directory. looks more like a color palette icon
35. Feature Request: Filter for scripts. Probably models and images, too.
36. Feature Request: dragging a texture into world space should create a decal, similar to how dropping a model creates an entity with that model
37. Feature Request: a mechanism to set location and rotation of a camera to current values of the editor camera, because it is easier to set a camera angle from the camera's view
38. Feature Request: a way to teleport the editor camera to the player camera (in case you are lost)
39. Feature Request: isometric view, if it is easy to do
40. Bug: gizmo always uses the world coordinate system, while position fields are relative to "attached to" object. particularly weird for rotating bones
41. Remark: Difference between the different collision types unclear
42. Feature Request: Could use a showroom for the different shaders, to show i.e. the difference between "core/shaders/Emissive.surface_shader" and "core/shaders/Model_emissive.surface_shader" is not immediatly clear
43. Bug: asset_pipeline.html says bulder.build_options instead of builder.build_options (and of course I just copied that, argh)
44. Bug: last console entry I remember was "building file glider.fxb" and then "Ran out of state diffs!". exited the game normally. the next time I open the editor everything is black and console says "Couldn't load 'working/new.world' (file not found)"
Turns out the whole working directory is not accessable, not even by be under windows as admin (access denied). I am not that practiced with DOS tools, so here is a bash output (yep, bash on windows): SSD with NTFS. could be accidental (you probably don't mess with filesystem stuff anyway), was fixed by reboot.
45. Feature Request: build material files automatically. Problem is this: made a .fbx model with SketchUp, import was fine, when using the model the console is flooded with messages like "Couldn't open file somename.material". somename.dds exists and I don't want to create all the .material files by hand
46. Bug: game sometimes crashes when clicking (enabling) the vsync checkbox. not reproducable
47. Bug: (?) tried to import a ball model with rather high polycount. got messagebox: "Assert Failed: Builder.exe" "Filename: Array.h (148)" "Expression: i >= 0 && (int)i < m_numElements" "Message: 64536 outside 0-83". FP was still running and exiting normally, but had to kill game.exe manually. Model file is attached to this post (zipped because .fbx file type is not allowed).
48. Remark: nontextured models exported with SketchUp apparently have "frontcolor" set as default material, yielding "Couldn't open X/frontcolor.material" messages in the console and invisible models. you may want to add that, so importing is easy
49. Bug: material change in model editor (ingame) did not carry over to world editor, until changing the name and then changing it back (after doing this the asset builder does not update the model when changed)
50. Bug: (related) changed a material in the model editor, closed the model editor and opened it again -> changes are gone
Edit:
51. Bug: non-ascii unicode characters break the forum
<params>
<param name="nocull" >true</param>
</params>
or something? but obviously not since that isn't working
All my NS2 stuff is on a HDD I low longer have installed!
Have not tried it.
Thanks!
I do have two questions; How are custom collision models imported? Can I just import an FBX hull and attach it to the model or is it more involved?
Also is there anyway to intensify the specular effect of on a texture through shaders? 100% brightness and glossiness still isn't enough for the glitter effect I want on the water. I'd also like to apply a masked (scrolling) overlay on the normal map only but I don't believe that's possible. I need it to glisten so if anyone has any ideas please help!
Are you making those to pass the time, or do you have.. something in mind?
Once I've got the foundation laid I want to make development open so anyone from the community can chip in, I'm hoping the package system will make that viable. I'm not big on traditional 'teams' but I do like the ideas community and sharing development; Something similar to the SCC for future perfect but where people work more on projects together rather than isolated development. But it's early days and I don't think FP is quite fleshed out to even try that right now.
I put together a visual for a wish list for FP, not sure of these suggestions are that useful for everyone or what you have in mind for the layout but they're things I have missed while working in FP. mainly just for speeding up the workflow and organizing larger maps.
Hopefully you can decipher my scribblings.
4 hours of fiddling and It's like pulling teeth... I yield! I need some leads! The person that helps me figure this out I'll be in debt of a model or two and have my eternal gratitude. Best to stick to what you Know I guess...
It's quite an important shader for the visual style, Anything metallic will have glitter clued onto it.
I need the specular map to be really really shiny where the glitter is. The maps will need adjusting accordingly. how do I increase the glare of the shine?
The scrolling normal overlay has been blowing my fragile mind... no leads at all on this one.
My idea was to mask another normal map that's scrolling (very slowly) to give a subtle glistening effect to the glitter. I'm simply not sure of how to approach this, the original normal needs to be preserved while the scrolling overlay needs to slightly Alter the existing normal where unmasked.
I've attached the files if anyone does fancy having a play, drop the folder in your documents/future perfect.
How it currently looks:
Thanks
If you're making fast and loose models you don't really want to spend hours struggling with advanced animation suites to get your basic ideas across. they're powerful but without some serious experience they're a pain to use and huge stumbling block for a lot of modders.
I like source film makers interface but it really doesn't need to be that deep or powerful.
A Simple, bare-bones rigging and key-frame system would make a lot of people's lives a lot easier.
Here comes the next list of things I stumbled upon. Continuous numbering ftw! Again, feel free to ignore everything except for the last one (#76). I really need an answer for that.
52. Bug: >game.exe -build_assets C:\test< creates C:\testpackets (check for trailing backslash)
53. Q: >game.exe -build_assets C:\test\< just builds assets and exits. that is intended behavior, right? what's the parameter to set the assets build dir during gameplay? and is it possible to change the assets source dir?
54. Remark: input fields are missing some standard interactions (tab switch, copy, paste, select all, highlight on focus)
55. Bug: cursor not visible when input bigger than input field
56. Bug: crash when resizing controller radius/height to zero -> catch error and/or limit slider range
57. Remark: unclear why controller comes bundled with the controller volume, which is in it's effect a collsion volume
58. Bug: Script Error Icon is not removed when the respective script component is deleted
59. Bug: (?) Player Spawner - Setting Player Blueprint to Mine or Alt_Coin crashes the game
60. Bug: labels are rendered in front of component editor and menu
61. Remark: Deleting animation graph from Avatar removes ability to look around - unexpected (thought of the camera as being independent from the animation, instead of mapping the input to the animation and the camera follows) - is fine once you know it
62. Remark: moving_player.lua is also handling OnView event - unexpected
63. Remark: "Create Player On Destroy" script is executed when deleted in the component editor, making it impossible to delete on the current avatar in a running game
64. Feature Request: Key inputs (i.e. Action.Use, Action.PrimaryAction) are easy to find out, but should be documented. also, doesn't this limit the number of keys to 32 or so?
65. Bug: move and rotate gizmo don't work on objects which have collision physics enabled (in play mode)
66. Feature Request: way to print sth to console, that does not print into log. Printing something often, i.e. velocity of a moving object, creates a lot of output I dont necessarily want to bother my poor SSD with.
67. Remark: there is no Self_GetAngles, only Self_GetLocalAngles. Coords and Position have both variants. Not that I know what it would return, but symmetry is nice.
68. Feature Request: ability to place Controller/Trigger Box relative to model
69. Bug: (?) moves entity (model + controller + script) in x-dir, but when a collision component is added, the object moves diagonally (x-y). Probably to be ignored as I didn't call Player_SetControlledEntity in before.
70. Q: Complete list of all functions called by the game? My list so far:
OnThink - called every 1/30th sec
OnCreate - called once when entity is created (after game start)
OnDestroy - called once when entity is destroyed
OnTrigger - called on enter/exit of trigger box through trigger component
OnTimer - called repeatedly after specified interval through timer component
OnInput - called on key press/release through controller component
OnView - called on mouse movement through controller component
OnHud - ?
OnGravity - ?
OnPlayerJoin - called once when a player joins (after game start)
Execute (Automator only) - called when sth changes (?)
Shutdown (Automator only) - ?
71. Q: Should I be able to add a package to its own package list? I am not 100% sure, but I think that is what caused an error were others were unable to join the game
72. Q: What does "Find Packages" filter for? searching for "mine" yields "Rocket Science" - unexpected
73. Bug: different blueprints with the same name show only up once. maximum confusion as it depends on the loading order which can not be manipulated ingame. I.e. there exists shooter/shooter/spawners/player_spawner.blueprint (which gives you a railgun by default) and spawners/spawners/player_spawner.blueprint (all fields empty). importing spawners after shooter gives only access to the empty one. unless you import avatar after that, as that imports shooter again.
74. Remark: Dependencies need to be cleaned up. I.e. spawners package loads vertigo but does not really depend on it (as far as i see). Or alt_coin imports avatar and vertigo, just because it comes with a world, which it does not really need. better create "Tutorials: Alt Coin" as a separate world. also implicit imports are not easy to follow, i.e. the reason "mine" is available is because the "shooter" package imports it, "avatar" implicitly imports "railgun", everything at some point imports "vertigo", etc.
75. Bug: renaming a .model file makes it unusable, i.e. mv a.model b.model (?)
76. Q: Is there a way to detect when a collision geometry has collided with something? I.e. if I were to write a script that counts how often an entity colided with a wall or changes a skin on each collision. There is no OnHit or OnCollision, triggers come only box shaped, I can only check Overlap for boxes, spheres and rays, and Self_AddCollisionComponent doesn't have a callback. So how can I do it?
Edit: Happy New Year everyone
But it got me thinking is there any way we can make it so people other than the host have control over the editor? COOP game jamming in real time!
What I was wondering, is will there be a way to disable editing for the host in-game? For example, if I make a full game, I'd want it to be able to run at a lan party without the host being able to edit the game. Of course, it still needs to be editable and testable, so I don't know how that could be solved, unless I guess dedicated servers could be made to not allow real-time editing, so games running on dedicated servers could be solely playable.
Of course, that means dedicated servers again...
I also wonder about the option of extending the editor ability into a game role. So you maybe have a couple of players on a FPS game, or a 3rd person side scrolling adventure, whatever, and as they are making their way through the game, you have an opponent who is basically editing the upcoming rooms, changing the enemies, starting positions, etc. The editor in game is a great thing for game creation, and I'd like to understand more about these kind of options in the future.
Are some of these options likely to be available?