a multiplayer game of parenting and civilization building
You are not logged in.
Pages: 1
Video demo uploading now...
Ah, here's the video:
https://www.youtube.com/watch?v=4AASW8nM4Yk
Based on this commit:
commit 1b070cba5b8452156bcfd53c4c0996e37569dc3e
Here's the patch:
diff --git a/gameSource/LivingLifePage.cpp b/gameSource/LivingLifePage.cpp
index 2afb3b1..ac40c47 100644
--- a/gameSource/LivingLifePage.cpp
+++ b/gameSource/LivingLifePage.cpp
@@ -79,6 +79,7 @@ static char shouldMoveCamera = true;
extern double viewWidth;
extern double viewHeight;
+extern double visibleViewWidth;
extern int screenW, screenH;
@@ -4648,8 +4649,15 @@ void LivingLifePage::draw( doublePair inViewCenter,
memset( mMapCellDrawnFlags, false, numCells );
+ setDrawColor( 0.5, 0.5, 0.75, 1 );
+ drawSquare( lastScreenViewCenter, 2000 );
+
+ setDrawColor( 0.0, 0.5, 0.0, 1 );
+ drawRect( lastScreenViewCenter.x - 800, lastScreenViewCenter.y - 800,
+ lastScreenViewCenter.x + 800, lastScreenViewCenter.y + 270 );
+
jasonrohrer2@latitude:~/checkout/OneLife/gameSource$ cat oneLifeTrash3D.patch
diff --git a/gameSource/LivingLifePage.cpp b/gameSource/LivingLifePage.cpp
index 2afb3b1..ac40c47 100644
--- a/gameSource/LivingLifePage.cpp
+++ b/gameSource/LivingLifePage.cpp
@@ -79,6 +79,7 @@ static char shouldMoveCamera = true;
extern double viewWidth;
extern double viewHeight;
+extern double visibleViewWidth;
extern int screenW, screenH;
@@ -4648,8 +4649,15 @@ void LivingLifePage::draw( doublePair inViewCenter,
memset( mMapCellDrawnFlags, false, numCells );
+ setDrawColor( 0.5, 0.5, 0.75, 1 );
+ drawSquare( lastScreenViewCenter, 2000 );
+
+ setDrawColor( 0.0, 0.5, 0.0, 1 );
+ drawRect( lastScreenViewCenter.x - 800, lastScreenViewCenter.y - 800,
+ lastScreenViewCenter.x + 800, lastScreenViewCenter.y + 270 );
+
// draw underlying ground biomes
- for( int y=yEndFloor; y>=yStartFloor; y-- ) {
+ if( false ) for( int y=yEndFloor; y>=yStartFloor; y-- ) {
int screenY = CELL_D * ( y + mMapOffsetY - mMapD / 2 );
@@ -4844,6 +4852,16 @@ void LivingLifePage::draw( doublePair inViewCenter,
// draw floors on top of biome
for( int y=yEnd; y>=yStart; y-- ) {
+ double smoothGridCenterY =
+ lastScreenViewCenter.y / CELL_D - mMapOffsetY + mMapD/2;
+
+ double viewScale = (y - smoothGridCenterY + 4.0) / 4.0;
+
+ setLetterbox( viewScale * visibleViewWidth, viewScale * viewHeight );
+
+ setViewSize( viewWidth * viewScale );
+
+
int worldY = y + mMapOffsetY - mMapD / 2;
int screenY = CELL_D * worldY;
@@ -5013,7 +5031,7 @@ void LivingLifePage::draw( doublePair inViewCenter,
toggleAdditiveTextureColoring( true );
setDrawColor( multAmount, multAmount, multAmount, 1 );
- for( int y=-1; y<=1; y++ ) {
+ if( false ) for( int y=-1; y<=1; y++ ) {
doublePair pos = groundCenterPos;
@@ -5056,7 +5074,7 @@ void LivingLifePage::draw( doublePair inViewCenter,
//toggleAdditiveTextureColoring( true );
setDrawColor( 1, 1, 1, addAmount );
- for( int y=-1; y<=1; y++ ) {
+ if( false ) for( int y=-1; y<=1; y++ ) {
doublePair pos = groundCenterPos;
@@ -5500,6 +5518,15 @@ void LivingLifePage::draw( doublePair inViewCenter,
int screenY = CELL_D * worldY;
+ double smoothGridCenterY =
+ lastScreenViewCenter.y / CELL_D - mMapOffsetY + mMapD/2;
+
+ double viewScale = (y - smoothGridCenterY + 4.0) / 4.0;
+
+ setLetterbox( viewScale * visibleViewWidth, viewScale * viewHeight );
+
+ setViewSize( viewWidth * viewScale );
+
// draw marked objects behind everything else, including players
@@ -5791,6 +5818,15 @@ void LivingLifePage::draw( doublePair inViewCenter,
if( drawRec.person ) {
LiveObject *o = drawRec.personO;
+ double viewScalePerson =
+ ( o->currentPos.y - lastScreenViewCenter.y / CELL_D
+ + 4.0 ) / 4.0;;
+
+ setLetterbox( viewScalePerson * visibleViewWidth,
+ viewScalePerson * viewHeight );
+
+ setViewSize( viewWidth * viewScalePerson );
+
ObjectAnimPack heldPack =
drawLiveObject( o, &speakers, &speakersPos );
@@ -5836,6 +5872,10 @@ void LivingLifePage::draw( doublePair inViewCenter,
heldToDrawOnTop.push_back( heldPack );
}
}
+ setLetterbox( viewScale * visibleViewWidth,
+ viewScale * viewHeight );
+
+ setViewSize( viewWidth * viewScale );
}
else if( drawRec.extraMovingObj ) {
ExtraMapObject *mO = mMapExtraMovingObjects.getElement(
@@ -6020,7 +6060,9 @@ void LivingLifePage::draw( doublePair inViewCenter,
}
}
} // end loop over rows on screen
-
+ setLetterbox( visibleViewWidth, viewHeight );
+ setViewSize( viewWidth );
+
// finally, draw any highlighted our-placements
if( mCurMouseOverID > 0 && ! mCurMouseOverSelf && mCurMouseOverBehind ) {
@@ -6061,6 +6103,14 @@ void LivingLifePage::draw( doublePair inViewCenter,
doublePair pos = speakersPos.getElementDirect( i );
+ double viewScaleSpeech =
+ ( pos.y / CELL_D - lastScreenViewCenter.y / CELL_D
+ + 4.0 ) / 4.0;;
+
+ setLetterbox( viewScaleSpeech * visibleViewWidth,
+ viewScaleSpeech * viewHeight );
+
+ setViewSize( viewWidth * viewScaleSpeech );
doublePair speechPos = pos;
@@ -6106,7 +6156,8 @@ void LivingLifePage::draw( doublePair inViewCenter,
o->speechFade, widthLimit,
o );
}
-
+ setLetterbox( visibleViewWidth, viewHeight );
+ setViewSize( viewWidth );
for( int i=0; i<locationSpeech.size(); i++ ) {
Making a non-crap version of this wouldn't be too much harder. Floors and biome ground texture are the non-trivial part.
Offline
Well, I was thinking that it would be funny if the photos produced by the camera had a perspective effect in them. But floors/ground are are much harder to make nice-looking with quick hacks.
The 3D experiment was interesting enough to walk around in that I thought I'd at least share the zany result.
Also, it goes to show how closely artwork and design are wedded. The ponds and ice holes in this version look really weird... like they're "standing up" above the ground. It's impossible to represent such things with billboards (though it looks fine in the 2D version). A more extreme example is floors.
Offline
Ooooh! So it all plays in, was the photo made using this or an altered method?
I mean I know I sometines do projects productive or not just for the kicks!
Ponds and floor would do better as floor tile overlays maybe, but definitely, i mean. I'll probably like it for the novelty.
Bilboard items like in daggerfall and wolfenstein 3D why not
Offline
Video here:
Offline
Offline
1. Nice work!
2. I was your first mother in that video and you were our last girl. We died out. /angry
3. Sorry for calling you an idiot kid.
Offline
That's actually very cool!
WE HAVE A SKY, I REPEAT, WE HAVE A SKY.
Notable lives (Male): Happy, Erwin Callister, Knight Peace, Roman Rodocker, Bon Doolittle, Terry Plant, Danger Winter, Crayton Ide, Tim Quint, Jebediah (Tarr), Awesome (Elliff), Rocky, Tim West
Notable lives (Female): Elisa Mango, Aaban Qin, Whitaker August, Lucrecia August, Poppy Worth, Kitana Spoon, Linda II, Eagan Hawk III, Darcy North, Rosealie (Quint), Jess Lucky, Lilith (Unkle)
Offline
Seems cool, but has its flaws. Obviously it's very hard to see danger coming from the south for one
Favourite Lives: MrDryer/ChirpChapley (Eva II) Town Nurse (Beth Storm) Ma's Best Li'l Helper (Law Autry), The Latex Lord (Kevin Youree), 60 Years a Blacksmith (Victoire Mom) The Egglord's Apprentice (Thomas II), Big Blood Brother (Dante), Horse racer on doomsday (Lilly Tana)
Profile Picture by MultiLife
Offline
Seems cool, but has its flaws. Obviously it's very hard to see danger coming from the south for one
Rotatable viewpoint would be nice...
Steam name: starkn1ght
The Berry Bush Song
The Compost Cycle
Gobble-uns!
Offline
Now do it on shrooms
--Grim
I'm flying high. But the worst is never first, and there's a person that'll set you straight. Cancelling the force within my brain. For flying high. The simulator has been disengaged.
Offline
Now do it on shrooms
Yes
Be kind, generous, and work together my potatoes.
Offline
1. Nice work!
2. I was your first mother in that video and you were our last girl. We died out. /angry
3. Sorry for calling you an idiot kid.
To be fair he was, Just running away like that. He did try to comeback but he went too far.
Jason in trailer: I may end up as your baby.
Jason in game: Runs away.
Offline
Reminds me of Animal Crossing: Wild World. All it needs is a Raccoon Yakuza Boss making you work off your usurious loan. (please don't)
Offline
The photo post reminds me of this topic! Did you use the 3d thing to make the photo work or is this something you came across by accident trying to get the photo to work? Either way, it's awesomely weird and weirdly awesome!
==============
My Eve name is normally Sugar & I love my babies, all of them!
Offline
Reminds me of Animal Crossing: Wild World. All it needs is a Raccoon Yakuza Boss making you work off your usurious loan. (please don't)
Too late. It has already been added to OneTech. Going live next update. Good luck paying off your debt in time.
Offline
Averest wrote:Reminds me of Animal Crossing: Wild World. All it needs is a Raccoon Yakuza Boss making you work off your usurious loan. (please don't)
Too late. It has already been added to OneTech. Going live next update. Good luck paying off your debt in time.
Noooooooo!!!
Offline
Pages: 1