Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Work in Progress / [DBP] Rift - Puzzle Game with Built-in Editor

Author
Message
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 15th Aug 2011 05:43 Edited at: 13th Dec 2011 02:04
NOTICE: This project has been temporarily canceled as it was not designed well to begin with and was never going to achieve finished status. I am in the process of redesigning the entire game so that it's much more expandable. The editor is now a second-priority part of the development as the game engine has turned out to be more important to get a finished game. I will tell you when I get a working demo of the latest project.

---------------------------------------------------------

Hey guys,

Rift is a free and open-source puzzle game based heavily on games such as Portal and Portal 2.

I know, it sounds like this is one of those "I'm going to do this, and this, and this..." posts where nothing ever happens (believe me, I've read through this) but it's not. This is a serious Work In Progress.

---------------------------------------------------------

Gameplay: Rift is a 3D puzzle game. You pick up bricks, stand on buttons, open doors, find keys, and win levels. Rift includes a built-in editor. That's means you can create your own puzzles! In fact, all the levels included were created with the built-in editor.

---------------------------------------------------------

Background: I originally decided I wanted to make Rift after finishing the Portal 2 singleplayer campaign by myself and the co-op campaign with my brother over a LAN. I wanted to have a go at making new levels for Portal 2, but when I went to get the editor, I found it to be 256mb, way more then I can download. Plus, you can only download it via Steam, so if my brother wanted to make levels as well he would have to download it again. Not good. So I got to work on Rift. I decided to put most of my effort into the editor, since editors are generally more difficult to code then games, and many people would be spending a large amount of time there (myself included).

---------------------------------------------------------

Recent news: New (fixed) demo! This is mainly so I can show Diggsey the bug with TopGui (or the way I'm using it) so not much has changed. Even the portals are still here. Step-by-step instructions on breaking TopGui:

1) Start Rift
2) Press Enter (show properties window)
3) Press E (switch to play mode)
4) Press E (switch to edit mode)
5) Press Enter (hide properties window)
6) Press Enter (show properties window)
7) Press E (switch to play mode)
8) Press E (switch to edit mode)
9) Press Enter (hide properties window/crash TopGui)

Good job! You just crashed TopGui in 9 easy steps!

---------------------------------------------------------

Older news: I have removed portals from the game. I found them too difficult to work with, and they did some strange things sometimes. I have removed the screenshots showing the portals for that reason. Plus they would have made it nearly impossible to make Rift multiplayer in the future. I just want Rift to be a fun, highly modifiable puzzle game. I also want to see it finished, and the portals were causing me so much trouble that I kept stopping work and getting frustrated. Also, as you can see, this post is now much more organised.

---------------------------------------------------------

Old news: Demo! I have finally uploaded a demo version for all to see. It's extremely messy and has many, many bugs but it shows basically what I've done so far. The source code is included, as this is an open-source game. The readme is in the documentation folder and lists some of the major bugs. If you find a really major bug (like if the game crashes when you jump), first check the readme to see if the bug is already listed, otherwise, TELL ME!

---------------------------------------------------------

There's probably already a game called Rift, but I am terrible at coming up with names. I will probably change the name sometime in the near future.

---------------------------------------------------------

Unlike my last WIP, Space Invaders 3D, I actually have some screenshots this time. The first one just shows one of the base geoms (read down further), the second one shows the grab-arrows in the built-in editor, and the third one shows the raycasting-based entity placing (you can double-click to pick up objects and place again like this). There's not much to show visually yet, but most of the code is in place. I prefer to finish the hard stuff first, and all the hard stuff is code. I have too many unfinished projects already - I know that if you do all the easy/fun stuff first, you never finish (once again I refer you to this).

---------------------------------------------------------

Each Level has one geom, this is the base level geometry. The base distribution will come packed with several geoms. These are linked (and not copied) to each level. Then, if the level is one already created and not a new one, the level has a list of entities and their properties (position, rotation, scale, what happens when you stand on them, etc). To change and fine-tune the layout of the level, the level-maker uses static entities, which will be blocks in various shapes and sizes. Finally, the level is populated with puzzle-specific entities and decorative entities and distributed on the internet for all to play. There will be no global server for levels to be stored on.

---------------------------------------------------------

Here is the current progress:

= Completed
= Working on it
= Haven't started yet
= This feature has been canceled

Singleplayer
- FPS Controls
- FPS Movement
- FPS Collision (these three I already had finished in other projects)
- General Physics (needs fine-tuning - the gravity's a bit low)
- Per-Entity Scripts
- Basic GUI
- Picking Up Objects (carrying them)
- Per-Level Scripts
- Gameplay GUI
- Main Menu GUI
- Pushing Physics Objects Around
- "Rifter" gun and portal system (the system to handle them, not the portals themselves)
- Portals (the portals themselves, not the system to handle them)

Multiplayer
- Make Rift Multiplayer (this is last on the list, though now portals have been removed it may still happen)

Editor
- FPS Flying Controls
- FPS Flying Movement
- Entity Placing
- Entity Deleting
- Entity-Moving Grab-Arrows (a gizmo like in 3D modeling programs. they have recently become buggy for some reason)
- Basic GUI
- Entity List GUI (for selecting which entities to place)
- Properties Windows For Entities
- Properties Windows For Levels

And here are the screenshots:







Clonkex

Attachments

Login to view attachments
SH4773R
14
Years of Service
User Offline
Joined: 18th Jan 2010
Location: AMERICA!!!
Posted: 15th Aug 2011 07:52
Looking good

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 15th Aug 2011 10:10 Edited at: 16th Aug 2011 06:28
Thanks!

A while ago I looked at a Paradox Engine - I think it must have been an old version because it was TOTALLY AWFUL, however the one linked to by your signature looks like it might actually be ok. I am downloading it now to see just what's improved.....

.....ok, nothing. Is that the out-of-date version? You really need to upload a new version, because the one that's on there at the moment is COMPLETELY AWFUL!

Really, I'm sorry to be so horrid, but what the heck is the grey flickery thing that comes over the screen when you walk???

Now that I've said how much I hate that old version, I would like to offer you my excellent FPS code. I will post it here, free for all to use. It requires the latest version of Sparky's DLL. It's extremely robust and fast. You can walk, run, jump, hit your head, walk up and down steps, and crash into things with great sliding collision. Please, use it, it's really excellent.

Here is the code. I recommend you place it in this order, or it may not work as well. There is also a slight bug with the jumping. When you land on something that's not exactly the same height as the thing you jumped off, it jumps very slightly. I have tried many times to fix this but cannot see a solution. Maybe you can fix it?

These are the global variables:


This is the mouselook code:


This is the movement code:


And this is the collision code:


This is a new function that I only recently added. It simplifies it a lot:


Clonkex

SH4773R
14
Years of Service
User Offline
Joined: 18th Jan 2010
Location: AMERICA!!!
Posted: 15th Aug 2011 10:35 Edited at: 15th Aug 2011 10:46
Yes that is the out of date (horrible) version, the unreleased version im working on currenty is 1.8 versions ahead of the one you downloaded. The new one does have better collision handling (sliding). I am having some issues with gravity. Allthough our code is somewhat similar I will try out yours asap, thank you

Edit:
Im not on my dev comp but a glance at your code and a few optimizations become apparent:

In the mouse look snippit the 4 lines if camera angle x()=360....
Could be replaced with 2 line using the wrap angle command.

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 15th Aug 2011 13:24 Edited at: 16th Aug 2011 06:30
Quote: "I will try out yours asap, thank you"


No, thank you! Glad I can help

Quote: "In the mouse look snippit the 4 lines if camera angle x()=360...
Could be replaced with 2 line using the wrap angle command"


Ah, yes. I had thought of that but I never got around to trying it. I have never used the wrap angle command before and my code worked fine so I didn't bother to try it. Lazy me

I'm hope you can use my code, it's been updated and updated so many times that I think it's nearly reached perfection! Well....except for that jumping bug....

Clonkex

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 16th Aug 2011 01:22 Edited at: 16th Aug 2011 06:30
I was fiddling with that code last night and found some more useless code. This...



...can be removed from the movement code.

And I think this...



...can be changed to this...



...in the collision code.

EDIT: Ignore the second code-change. It does break it. I hadn't thought of the fact that the camera position could change between setting posx#, posy#, and posz# and calling that collide command. However, for consistency, newx#, newy#, and newz# should be changed to posx#, posy#, and posz#

EDIT2: That stuff can be removed from the movement code with no problem, though. Hopefully.

Hope none of that breaks it

Clonkex

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 17th Aug 2011 03:28
Turns out you can ignore me completely. None of the code changes above can be used. Also turns out I'm wasn't completely stupid when I wrote the code and I did actually know what I was doing

How's the code going for you?

Clonkex

gwheycs62egydws
14
Years of Service
User Offline
Joined: 17th Aug 2009
Location: The World
Posted: 17th Aug 2011 03:32
hi

I look forward to see how this go's

I've been a big collector of information from
this forum and others I have found in
3 different parts of the world

If a thought is Just a thought ~ so whats the main thought ?
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 17th Aug 2011 03:37
First post has been updated, and now explains what the gameplay will be like.

Clonkex

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 22nd Aug 2011 10:44 Edited at: 22nd Aug 2011 10:46
Update!

The first post has been updated, now it's slightly more organised and I've posted a demo and the source code.

Sorry I didn't post the demo when I said I would, we had problems with our internet and I couldn't get on here

Have fun!

Clonkex

P.S. I am dramatically re-writing a lot of the code right now, so the editing gui will be much more useful and actually work in the next demo

TheComet
16
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 22nd Aug 2011 21:44
Going backwards into the rift makes you jitter about. Otherwise nice job!

TheComet

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 23rd Aug 2011 01:05
Quote: "Going backwards into the rift makes you jitter about."


Oops, I already knew about that one. Forgot to put it int the list of bugs. It would be very easy to fix, I just never got round to it. However, I am in the process if removing the portals. They are causing me too much trouble. Plus, I hadn't intended on having portals in the first place and the puzzle element would be easier to do if the portals were not there.

Quote: "Otherwise nice job!"


Thankyou!

Clonkex

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 23rd Aug 2011 02:06
New demo! Actually not much has changed - even the portals are still there. But it does show off how the new edit gui will work. It's also mainly to show Diggsey how to replicate a bug with TopGui.

Enter = Open properties window
P = Open entity selection window
F = Place last selected entity

Clonkex

Daygamer
14
Years of Service
User Offline
Joined: 16th Mar 2010
Location: United States
Posted: 23rd Aug 2011 17:47
It ran perfectly!

It's very interesting. I was able to place cubes and spheres on the floor and walls, and even on each other! Nicely done. It's also neat to see the next room through the bubble. The level overall looks cool. Cartography Shop to the MAX! I assume that's what you used.

A little collision would do nicely. But I understand you wanting to code the hard parts first. No worries.

Have I seen all there is. Is there a way to get to another level. I never played portal, so maybe I'm missing something?

Nice work though. Keep it up! I will await the next version with anticipation...

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 24th Aug 2011 00:42 Edited at: 24th Aug 2011 00:44
Quote: "It ran perfectly!"


Great! Except that means it WAS my plugin causing the problems....wonder what it could be....?

Quote: "Nicely done. It's also neat to see the next room through the bubble."


Thanks!

Quote: "The level overall looks cool. Cartography Shop to the MAX! I assume that's what you used."


Lol, no I actually didn't. I originally used 3DWS, but it ended up being too difficult. Then I used a game called Sauerbraten. It's really hard to explain what Sauerbraten is, but I can tell you it's great for making maps! I've had years of experience with the editmode in Sauer so it only took me a few minutes (5?) to make this map. If you've never played Sauer before, I highly recommend you play Cube (Sauer is Cube 2) first, as it's somewhat easier to understand and is MUCH smaller to download (Sauer is ~250mb). The graphics aren't anywhere near as good and it can be a little tedious but you wouldn't believe what you can do with it when you really push it! Of course you can't export maps from Cube 1 but it's where you practice before you advance to Cube 2 (Sauerbraten). Both are free and can be found here. They're made by a Dutch guy called Wouter or something. If you need any help just ask, please. I can help with ANYTHING in Cube or Cube 2.

Ok, back on topic.

Quote: "A little collision would do nicely."


What? Collision with what? Oh when you fly around? You can actually walk and jump as if playing the game if press E. E toggles between editmode and playmode, as it does in Cube. I didn't want to have collision when you're flying around because mapmakers sometimes want to be able to fly through stuff. Maybe I will make it an option.

Quote: "Have I seen all there is. Is there a way to get to another level. I never played portal, so maybe I'm missing something?"


Nope. As I said, there's not much visually yet but the code is mostly all there. I just have to start making some levels for people to play. In Portal, you would complete a "test chamber" (level) and then proceed to the exit (a lift to the next chamber).

Quote: "Nice work though. Keep it up! I will await the next version with anticipation..."


Thanks again! I am working hard to finish the script system so I can make some playable levels

EDIT: In that version, when you're in playmode, you can also left-click to fire one portal and right-click to fire the other. However, the portals will be removed in the next version and it will be a puzzle-game-without-portals

Clonkex

Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 13th Dec 2011 02:05 Edited at: 13th Dec 2011 02:06
Canceled (postponed).

Read top of first post.

Clonkex

Daygamer
14
Years of Service
User Offline
Joined: 16th Mar 2010
Location: United States
Posted: 13th Dec 2011 05:45
sorry to hear that. Hope you have more success on your next proj I'll will be trying to wrap up mine over Christmas break! Well, Merry Christmas! Have a good one

gwheycs62egydws
14
Years of Service
User Offline
Joined: 17th Aug 2009
Location: The World
Posted: 13th Dec 2011 11:44 Edited at: 13th Dec 2011 11:48
well before things shut down on this

check out

SPARK 3D Particle Engine wrapper 1.2

this one adds the effects department

to move side ways - is to move forward
Since a Strait line gets thin fast
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 14th Dec 2011 02:07 Edited at: 14th Dec 2011 02:09
@Daygamer:

Thanks, I will!

@Resourceful:

Downloading now! My current project is one that will incorporate all the features of this project and more, using a much more flexible engine. I have nearly finished development of my new engine, Mist Engine, which I will then use to re-create Rift with many new features. Now I think I will have to update Mist Engine to use this new particle system, along with my brilliant (but yet unreleased) MarbleX gui system.

I will get there eventually!

EDIT: Mist Engine will also use my Bullet Wrapper. I make lots of stuff for myself

Clonkex

Silvester
18
Years of Service
User Offline
Joined: 7th Dec 2005
Location: Netherlands
Posted: 15th Dec 2011 10:55
Looks nice, but if you ever decide to continue this.. I would refrain from using the name Rift, considering this MMO that has been out for a while by Trion Worlds: Rift.
Clonkex
Forum Vice President
13
Years of Service
User Offline
Joined: 20th May 2010
Location: Northern Tablelands, NSW, Australia
Posted: 21st Dec 2011 09:01 Edited at: 21st Mar 2014 14:46
I know. As I said in the first post, I am terrible at coming up with names, so for the time I was just calling it Rift even though I knew it was highly likely there was already a game with that name.

When (not if) I continue this, it will be part of a much bigger game which I have already started and which has a better (and completely unique) name.

EDIT: More than 2 years later and I am slightly disbelieving of my huge optimism. Fun looking back at what I used to be like, though One day I will actually finish all my many unfinished DBPro projects

Clonkex

Login to post a reply

Server time is: 2024-04-20 09:44:51
Your offset time is: 2024-04-20 09:44:51