Topic: A better camera

Download camera.obj

I tried a different approach in making a camera. Rename the extension to .inc, the uploader wouldn't allow me to use a file of that type. (Probably due to the fact the uploader was made before that extension even existed, unless I'm wrong)

It's still a bit jumpy on slopes, but for now, this will do a lot better than the other one. I'll update it soon with a variable that allows it to drop and regain focus on the fly, but for now, it should work just fine without it.

... Mainly because I just remembered as I was posting this and feel pretty dumb for not doing so. >_>

But tell me what you think.

Also, please, anyone, help me make jumping better.

EDIT: Added the variable. When using 'request_camera_focus', define "$_camerafocusdropped == 1". When using 'drop_camera_focus', define "$_camerafocusdropped == 0".

Last edited by SilverstepP (2012-01-06 01:07:06)

Re: A better camera

SilverstepP wrote:

But tell me what you think.

don't get upset on me this time. tongue

the "improve camera" request on the todo list is a very old one. i remember a player mentioning it when the latest release was 0.1.3, if i'm not mistaken. back then, it meant to make a camera that behaves like the classic genesis games. If you play sonic 2 or if you play this, you would see and feel the same camera. How the camera behaves is documented on the physics guide. Making an "improved camera" meant (and still means!) that.

you may argue that you may have a different vision altogether, that the camera should behave some other way, that it's not original, that it's lame, and it's all ok. However, the request hasn't changed. So, if you really want to make such a critical component (a camera) for opensurge, the request, as already has been said in the other thread, is to follow the physics guide.

of course you may add some cool additional features to the camera - whatever your creativity wants to, and we'll be glad to see it -, but for the ordinary player who just downloaded the game, the camera should behave like specified in the physics guide. if i turn on my old genesis again, it would be nice if the scripted camera behaved just like that. the "improve camera" item in the todo list means exactly that since it got added there.

Re: A better camera

Alexandre wrote:
SilverstepP wrote:

But tell me what you think.

don't get upset on me this time. tongue

the "improve camera" request on the todo list is a very old one. i remember a player mentioning it when the latest release was 0.1.3, if i'm not mistaken. back then, it meant to make a camera that behaves like the classic genesis games. If you play sonic 2 or if you play this, you would see and feel the same camera. How the camera behaves is documented on the physics guide. Making an "improved camera" meant (and still means!) that.

you may argue that you may have a different vision altogether, that the camera should behave some other way, that it's not original, that it's lame, and it's all ok. However, the request hasn't changed. So, if you really want to make such a critical component (a camera) for opensurge, the request, as already has been said in the other thread, is to follow the physics guide.

of course you may add some cool additional features to the camera - whatever your creativity wants to, and we'll be glad to see it -, but for the ordinary player who just downloaded the game, the camera should behave like specified in the physics guide. if i turn on my old genesis again, it would be nice if the scripted camera behaved just like that. the "improve camera" item in the todo list means exactly that since it got added there.

Well I tried to do that, but this is the best I could achieve. I never even wrote anything like a camera before.

This was mainly just a placeholder for a better one since the one we have right now doesn't work as well. I'm sorry but this is the best I can do. I can't figure out how to write as that thing specifies, so this is what I made.

I don't even know where to begin to fulfill those specs, so I guess this isn't going to go anywhere.

Re: A better camera

I'm giving this a shot, though I am unsure of if I will be able to do it properly.  I am going to give it my best shot though.

** EDIT 1 **
These numbers are unusable, we do not use a sonic sized sprite, and therefore the rectangles on the player are going to be different, and thus these rectangles will not work for camera scrolling.  Sonic is a good deal smaller than surge, though if they were to be the same size it would make a difference...  Let me know if you have a solution to this problem, without one I will not proceed.

Last edited by lunarrush (2012-01-06 08:00:36)

If I knew then what I know now I'd tell you that the story's true.  Cause whatever you do, it comes back to you.  -Slaughter, Burning Bridges

Re: A better camera

^ Exact same problem I had.

Re: A better camera

i understand this may be a hard thing to do. it turns out that you're tackling a difficult problem. i suggest that you don't give up on the first obstacle, and don't be discouraged just by hearing a no. you're dealing with a critical component (the camera), and that is indeed a challenge. if this challenge is really beyond everything you know (do you really believe that?), i'll understand. but don't give up so fast. How about trying to get this done within a week, starting from today?

lunarrush wrote:

** EDIT 1 **
These numbers are unusable, we do not use a sonic sized sprite, and therefore the rectangles on the player are going to be different, and thus these rectangles will not work for camera scrolling.  Sonic is a good deal smaller than surge, though if they were to be the same size it would make a difference...  Let me know if you have a solution to this problem, without one I will not proceed.

i don't really understand why these numbers are unusable.

still, if you think it's a good idea to resize the rectangle (i didn't thought of it), you can make it in a way such that the proportions between sprite size x rectangle size are kept. however, the camera must be accurate (compared to the physics guide) to be adopted. Sorry I'm being so demanding for this, but this is crucially important.

SilverstepP wrote:

^ Exact same problem I had.

Use a rule of three.

http://en.wikipedia.org/wiki/Cross-mult … e_of_Three

http://mathforum.org/library/drmath/view/60822.html

sonic width --------- original rectangle width (the one on the physics guide)
surge width --------- x

x = ???

Re: A better camera

Hello again:
Fried my brain attempting this again, here was my best attempt.  Perhaps you can tell me what I'm doing wrong, I used all those lovely numbers in the physics guide.

Please note:
* Tried using move commands instead of set_absolute_position, it lagged worse.

Download here : http://dl.dropbox.com/u/22535351/camera.zip

If I knew then what I know now I'd tell you that the story's true.  Cause whatever you do, it comes back to you.  -Slaughter, Burning Bridges

Re: A better camera

i can give you guys a hand. my camera object is not too perfect but i have some notions, and 4 heads can work better than 3. i'll try to have something before the end of tomorrow

https://image.ibb.co/kuSYrm/SD_sml.pnghttps://image.ibb.co/kHq8P6/SeD_sml.pnghttps://image.ibb.co/cJf8P6/LTot_W_sml.png

Re: A better camera

lunarrush wrote:

Hello again:
Fried my brain attempting this again, here was my best attempt.  Perhaps you can tell me what I'm doing wrong, I used all those lovely numbers in the physics guide.

Please note:
* Tried using move commands instead of set_absolute_position, it lagged worse.

Download here : http://dl.dropbox.com/u/22535351/camera.zip

using move is a bad idea IMO. perhaps you can attach_to_player at a certain offset. Calculating the correct offset, at any given time, is the key to solve the problem.

i believe you'll need some basic trigonometry.

10

Re: A better camera

attach to player works best with the camera, or move player_xspeed() player_yspeed() to which speeds you add the offset

https://image.ibb.co/kuSYrm/SD_sml.pnghttps://image.ibb.co/kHq8P6/SeD_sml.pnghttps://image.ibb.co/cJf8P6/LTot_W_sml.png

Re: A better camera

some ideas:

0. forget the player for a while.

1. on the recent builds, the camera is always centered exactly on the focused object (be it an scripted object or the player). You may have an object request the focus and, by doing that, you'll be able to track the position OF THE CAMERA (not the player)

2. having the position of the camera and of the player (perhaps in some other controller object), you'll be able to determine when the player reaches the borders and WHERE exactly it happens

3. attach_to_player may be helpful, because it doesn't lag behind the player

4. remember that the vertical movement algorithm is different when in the air or when on the ground..

Re: A better camera

Hello,
If I may be so bold, why again are we attempting to copy the camera from sonic 2?  Sure, that camera worked good for them, but I believe we could probably implement something much simpler without using these exact specifications.  Open Surge should be Open Surge, not Open(Sonic Clone)Surge, this is why we changed the name over from Open Sonic in the first place.  Perhaps I am wrong, and we are aiming to make a sonic clone, if so then why not just go all the way and make Open Sonic a reality?

Last edited by lunarrush (2012-01-10 08:08:31)

If I knew then what I know now I'd tell you that the story's true.  Cause whatever you do, it comes back to you.  -Slaughter, Burning Bridges

13

Re: A better camera

This is my honest opinion and it may go against many decisions and ideas.

The thing i hated the most about Sonic 2 was that it was always hard to see ahead with the character's high speed. The camera wasn't friendly for a high speed platformer.

The decision towards which we are working is not supposed to be a developer's call. One of the most common mistakes in game design is seeing the game purely from a developer's perspective. Thus, a camera should not operate perfectly by itself, is should behave perfectly through the game, no matter the "stress" the game may put in the camera at times.

Remember that the player will invariably struggle with the camera at a certain point if we do not consider THE PLAYER as the most important element of the game. and I don't mean the player as the pawn in the game, i mean the player in real life.

Quick example:

Dead Rising 2 is mechanically awesome, but fails terribly in the camera. While following the player is alright, but whenever the player gets cornered in walls or enemies, it becomes nearly impossible to aim. Looking at pick-ups and operating objects is another nightmare provided by the camera system. Frustrating to the point of rage quitting.

Now, we don't have a 3D game, the camera is substantially EASIER to operate. Why should we stick to specs of a camera that wasn't that great, to start with? It doesn't make it easier in any of the ends(players and developers). It doesn't even make sense to replicate something that is sort of broken, unless it is to be improved.

Sorry, told you i was going to be honest roll

https://image.ibb.co/kuSYrm/SD_sml.pnghttps://image.ibb.co/kHq8P6/SeD_sml.pnghttps://image.ibb.co/cJf8P6/LTot_W_sml.png

Re: A better camera

I agree with KZR and Lunar above. Open Surge has fewer limitations than the genesis did, so why waste them if we can make it a better game? Why bother copying exactly from Sega if we are uncapable to do it exactly as they did, and deny something that works?

Everyone who has seen my camera around here thinks that it is a lot better than the old one, and also the broken one within the engine now. Sonic 2's camera wasn't even perfect. Play Chemical Plant act 1, roll into a ball in the last 3/4 of the level where you go so fast that the camera fails to keep up.

My camera attempts to resolve the fact that you can't see ahead of yourself and react in time to incoming obstacles, something  a few players would kill for in other Sonic games. This is not Sonic. This is supposed to be Open Surge. If I submit something that works and it gets denied for not being exactly like the specifications of something that we probably can't even use with the scripting engine, and we leave in a currently broken camera in the bleeding release, something is wrong here. We are wasting time. Open Surge will never progress at this rate.

The question comes down to this. Do we want a cheap knock-off of Sonic? Or do we want the game to have its own feel?

Re: A better camera

I understand you might be frustrated. After days and days trying to make this camera according to those specs, it's still not working at all. It's understandable, since it's a hard problem after all. smile It's okay to take a break or to drop this task altogether if you want.

But let me tell you that it is incorrect to say this is "my call". I did not pull this goal out of nowhere. It comes from criticism from casual players. I used to google a lot about opensonic, and found people complaining about several things. This blog author, for example, is very emphatic by stating that 0.1.4 has an unconvincing physics and an "AWFUL CAMERA". You'll find other people with the very same criticism, if you give yourself time to search and look around. One has to admit that this engine, although very flexible, is strongly influenced by sonic games. "but this is opensurge, not opensonic", you say. I could have used this very same speech to not implement the new physics system that the community asked so badly (however, in reality, I knew it was hard to make it - but I did it anyway, didn't I?). Making this camera requires effort, requires brainpower, but it is feasible.

It's not about what we, a very small group of people, want. It's about what the actual players want, and most of them are not here in this forum. After doing research, I found that an "improved camera", in their conception - not ours, means a camera similar to the Sonic games. And the physics guide describes how to do it. Of course you can't make it behave exactly like the old games, since you can't use the same computer code after all. But you can use it as a guide to make what users want. It's even okay to adjust the specs a little bit, believing that you can do better ("feature 'X' is bad, so let's make a better one"), as long as the principle remains the same. It's all about what they need.

A technical challenge, in terms of logic and math, is no reason at all to drop it altogether, replace it by a simpler one and feel good about ourselves. It's about what casual players are saying. Therefore, I won't replace the goal.

Before saying anything else, I want to say thank you very much for the effort you've been putting on this challenge over the last few days. At the bare minimum, frying your brain makes you better at scripting. smile Please let me know if any of you is still going to try to tackle this problem. If nobody is, I'll give a shot.

Re: A better camera

Alexandre wrote:

means a camera similar to the Sonic games.

Note the word similar. Which does not necessarily mean "same specs".

Alexandre wrote:

This blog author, for example, is very emphatic by stating that 0.1.4 has an unconvincing physics and an "AWFUL CAMERA".

Correct me if I'm wrong, but is my camera not better than the old one was? And is it not better than the one we have in the current bleeding edge?

Alexandre wrote:

Making this camera requires effort, requires brainpower, but it is feasible.

Not if we have another one that works fine and completely throw it out the window.

Alexandre wrote:

I could have used this very same speech to not implement the new physics system that the community asked so badly (however, in reality, I knew it was hard to make it - but I did it anyway, didn't I?).

The physics were broken to begin with, anything was better than what we had. It's a Sonic game, physics are kind of the most important thing. Physics can make or break a game, and Sonic was famous as a game renowned for its physics, one of the single biggest reasons it sold so well. That's what makes this anything even close to being like Sonic.

This situation is different. I'm not even sure the method they used is possible at all with any scripting engine. If it is, I don't see it working. 

Alexandre wrote:

It's even okay to adjust the specs a little bit, believing that you can do better, as long as the principle remains the same. It's all about what they need.

So what does it need? You haven't said anything about what you think is actually wrong with it.

Alexandre wrote:

A technical challenge, in terms of logic and math, is no reason at all to drop it altogether, replace it by a simpler one and feel good about ourselves. It's about what casual players are saying. Therefore, I won't replace the goal.

Tell me. Has any casual player even tried my camera yet? The casual players haven't even said anything.

Alexandre wrote:

If nobody is, I'll give a shot.

I gave you my solution. If you won't use my camera and won't even tell me what is so different about it compared to "Sonic 2's Camera", then sorry, but you'll have to do it yourself. I offered to do this as help, and you keep denying me anything I give you, so apparently, only you can make what you want.

I'll stick to using my camera. If you don't want it, then I'll use it myself.

Re: A better camera

Colin, some of your questions are already answered in my previous post, if you take the time to read it calmly.

Regarding your camera... When I was 13, I made some mario fangame. When creating it, I came up with the very same philosophy you're telling me now for the camera: make the camera 'optimized' so that the player would be able to see ahead of himself, depending on his movement. At the time, I was so arrogant, and so I said "this camera is going to be awesome, it's very creative and you don't find it in other games, my players will kill for it". I was fascinated by that camera.

It turns out that, when I released that game, the camera was the most criticized thing - to the point it even became offensive (or so I thought). Players repeatedly complained that the camera was distracting, that it should be more centralized, that it "sucked". Surprisingly, when I tested your camera, Colin, I couldn't avoid recalling immediately of my 9-year-old fangame. What you're writing here is the very same philosophy I adopted back then. I know that you may dislike my words, but believe me, I've been there. I've seen this before, and I do not believe this is the best camera for opensurge.

SilverstepP wrote:

And is it not better than the one we have in the current bleeding edge?

it's called bleeding edge for a reason.

Re: A better camera

Alexandre wrote:

Colin, some of your questions are already answered in my previous post, if you take the time to read it calmly.

Regarding your camera... When I was 13, I made some mario fangame. When creating it, I came up with the very same philosophy you're telling me now for the camera: make the camera 'optimized' so that the player would be able to see ahead of himself, depending on his movement. At the time, I was so arrogant, and so I said "this camera is going to be awesome, it's very creative and you don't find it in other games, my players will kill for it". I was fascinated by that camera.

It turns out that, when I released that game, the camera was the most criticized thing - to the point it even became offensive (or so I thought). Players repeatedly complained that the camera was distracting, that it should be more centralized, that it "sucked". Surprisingly, when I tested your camera, Colin, I couldn't avoid recalling immediately of my 9-year-old fangame. What you're writing here is the very same philosophy I adopted back then. I know that you may dislike my words, but believe me, I've been there. I've seen this before, and I do not believe this is the best camera for opensurge.

SilverstepP wrote:

And is it not better than the one we have in the current bleeding edge?

it's called bleeding edge for a reason.

Whatever. Fine. I give up. I love how you assume everyone will dislike the camera before anyone even posted an opinion of it. Not even a single 'casual' player has said anything here, all I've seen is you saying that they could say such a thing. I don't think it's the 'best thing in the world'. I think it's better than the alternative we have before us. That we aren't even sure is possible.

The sad part of the argument before me is that this camera is pretty adjustable in its boundaries to make it even lag behind if you so desired. If you would have just told me that was the issue instead of suggesting to redo the entire thing, as you did over MSN, it would likely have been an easy fix. But to be honest, I don't care anymore so I won't bother explaining that, nor will I bother uploading the updated version with the better jump because I know it would never satisfy anyone here (according to you, anyways).

Make it yourself. I'm through doing anything but moderating for anything 'official' since apparently its all I'm good for.

I'm done talking about this.

Last edited by SilverstepP (2012-01-10 19:04:47)