so i’ve been working on a multi user environment game that i’d like to model around the Second Life / ps3 home / open sim metaverse model.
has anyone thought of tackling this problem in unity? the problem that would need to be tackled is not how to create a 3d world people can have their charcter run round in and interact with other people… the issue would be, how do I create something that lets users create content? besides obviously user submitted unity files that would have to be reviewed and implemented. that involves giving the user the ability to have editing and creation tools in game, which is way passed my level of programming.
Awesome timing for asking this question. A lot of people on this forum download Unity and 3 days later ask “Hey. I just got Unity. Please help me make a MMORPG by the weekend” and they are always told “Start small”…
My friend, I have set my target not on ‘the weekend’ but at ‘whenever in the future’ and my target is not a MMORPG… my target is Second Life 2 - Unity version
It was just today, only 3 hours ago that I was pondering the exact same question… There are multiple 3D apps out there and many users who know each so for experienced modelers to create content is no problem and thus getting content into the game is also no problem… but allowing ANYONE to CREATE their own models INSIDE the game… ouch.
If you went the road of giving prefabs people could attach to each other and ad custom textures to… that would kinda suck. Take those people who earned over a million $ by designing a virtual designer shoe in Second Life, no way they designed their model using a stock prefab… imagine telling people: “Here’s a box. Load a texture of a fridge on it and voila, you created a fridge”… just not on.
Unless you create some really simply primitives with many vertices and allow them to shape this cube with 8 divisions on each side into anything they want and then allow them to attach those together. But boy what a mission it is going to be to write an easy-to-use editor where you tell people to create a shape by puling vertices on a base shape… Selecting the vertices on their end, determining individual selected vertices on your end, doing the whole the user dragged the mouse left, translate those vertices this far in world space in this direction, scale it, rotate it… the maths behind rotating a random set of vertices inside a mesh…
Hell, unless you decide to go that road and do it in baby steps saying to people: “We now have boots. by adding textures with alpha you can create those Roman sandals things or fancy evening shoes with knee high straps” and then the following month create a new prefab and tell people “We now have high heels for shoes and allow this and that customization” and so go about the entire world’s objects, I have come to the conclusion that the only other viable option is to save a couple million quid and buy an existing product like Blender and work with the dev team to build a simplified version for the Average Joe User and have them compile the program as a plugin for your app…
Unless you introduce the world’s objects one at a time after making each one customizable in a certain way only, one by one, the only other way I saw this happening is by adding a full 3D editor into the game… and that is not something I am able to do… So I decided to stick to just adding content created by modelers… At least for the first few years
indeed indeed, programming a 3d editor is much beyond my scope of knowledge at this time.
so the option would be to do it like ps3 home does it. (have you seen ps3 home?)
it’s basicly second life without user created content.
but i like the idea of using unity 3d for a metaverse that focuses on… maybe playing games? it would be easier to do that, say create little in world games users can run around in and play… like a bowling alley, darts, little things like that
but they also release houses you can purchase, and furnish with items you get from the stores in home, or win them through playing games. not as cool as being able to create your own content, but people still suck it up
Forget PS3 Home, have you ever seen PacMan?
LOL, that sounds funny… I have a 3D version of PacMan on XBox that allows you to go into a video games arcade and play all the various other versions of 2D Pacman by standing in front of the arcade machine and hitting play. Once you click play, the screen changes and you play the game exactly as you would in the arcade.
Now take Fable’s archery training as an example. You speak to a bloke and then the camera locks to a specific point and the controls change.
Using those two concepts together you could populate your game with a multitude of mini-games. Just imagine a video games arcade where a player chooses to play a completely separate game you created. You then simply place a force field over the player’s location with a label going “Player busy” then, on the client side, load a new scene with your old game, built into the game or available as a downloadable content item… You could make numerous stand alone games and make them each playable in your game…
Alternatively, I created a game where you throw shuriken at targets. I then created other games that also use the same mechanic but you do different things. Either ‘hit targets before thy go away’ or 'hit all balloons of a certain color" or “spell these words before time runs out” etc etc etc. I then checked how far the camera is from the targets and placed a prefab object at that location. Now I have a 3D world where players can walk around in and when they reach that prefab they can get on the platform and start playing the game… Very simple to do. Just fix the camera angle and change the controls…
hehe. you just described ps3 home my friend you should go look at some youtube videos of it.
it’s exactly like that. they have arcades, with arcade cabinets you walk your 3d player around to… pick a game you want to play and press a button on the cabinet and it starts up the old 2d namco games (or whatever game it is) on your client side just like it should. it’s really quite cool if you haven’t ever seen it.
very awesome man, sounds like you have a good leg up on it. i’m trying to do the same myself
lol. i’m not that kind of unity user. I use it because it’s affordable for me as a small business. i’ve been working in the industry for about 7 years now
In the examples above, that was actually very easy to do. I like modular programming. I like breaking stuff into as small an object as possible. So for the shuriken games, I had a shuriken script. All that does is make the shuriken move forward. I have a target script that makes it pop up, wait a few seconds and then drop down again (with an optional rotation direction variable). It also sends a message to the “Table” object that I parented it to to say it was hit and what it’s value is. That is all the targets do. So basically, the shuriken and the targets both do nothing but send a message upon impact.
The table object handles the score and selecting which target to send the activation message etc. The table is the real master of the show. When the game is over it sends a message to say so. That message then calls another prefab that handles the “Play again or quit” buttons and depending on which one, it either resets the table variables and calls “Relaunch” or it restores the game’s camera.
The prefab simply has a collision trigger that calls the last prefab so the sequence is like this:
You step onto the platform, it calls the Restart/Quit dialogue box
That box either starts the game or returns to the main game
If you choose to play the mini game, the prefab just sends the table the Relaunch message.
The table handles what the targets do
When the Table determines the game is over, it sends the message to launch the Restart/Quit dialogue prefab
So when you have the other games, the same platform prefab using the same messages can start any of the mini games. Everything works exactly the same. Even the projectiles. So to add more mini games, all you have to do is create different tables with different functionality and the rest is done automatically. Thus what I did, was I crated each new nimi game as a stanalone to make sure the game itself works fine. Then I create a package from it, import it into my main game and attach it to the platform prefab. Simple
emergence, you make 31 posts and THEN you download Unity? Sorry to burst your bubble, bru but you don’t have 3 days till the weekend. Over here, the weekend starts in 5.5 hours… If you can get this MMORPG done by then, you would officially become my hero… but be careful, Higgy is currently my hero so you have some huge shoes to fill… (and no, I am not making any reference to the size of his feet, just the shoes).
It seems you and I are the opposite. I have the story figured out and a method of showing it. I have a lot of the mechanics figured out and coded and ready to get started on the visuals… here is where I am stuck with not being able to decide upon a visual theme or graphics style. You have the artwork done, I have everything BUT the artwork done… Well… around 70% of everything except the artwork
I’ve been planning this, building ideas… I’m not a programmer but I see possibilities/potential and some assets are helping speed this up.
Here is the issue I see… leaving one world through a portal entering another with different framework but function’s like Valve’s game Portal requires a smooth transition… your character/avatar of one game would be lost entering the next… so I realized to fix this someone would have to develop a plugin system that can be accepted by developers across game platforms as a Metaverse Avatar Plugin SDK This plugin would have a an IM/instant message system & profile that contains your avatar, basic animation & controller functions and possibly runtime modelling tools. I’ve purchased the asset Portals and Dimensions - it’s only designed for unity and would require Webkit functionality to send and receive html/xml etc… so I have another asset that does this UniWeb and Web API Kit Core which takes away the need for most of the programming. Then you would likely have programming language converters unless everything was built on webgl (I see this coming) most devices and web browsers are compatible with WebGL. So the conversion any would be about displaying the effects and position, scale etc from one platform to the other when Lerping through a portal like seen in Dimensions and Portals or janusvr, Valve’s game Portal 2 etc. If staying inside the Unity development, one might even use the asset Play Editor which is a runtime editor.