Classic Tomb Raider open-source engine
xproger / openlara Goto Github PK
View Code? Open in Web Editor NEWClassic Tomb Raider open-source engine
Home Page: http://xproger.info/projects/OpenLara/
License: BSD 2-Clause "Simplified" License
Classic Tomb Raider open-source engine
Home Page: http://xproger.info/projects/OpenLara/
License: BSD 2-Clause "Simplified" License
Classic Tomb Raider open-source engine
File: Format.h
Based on: 7f00441
Issue: struct "FloorInfo" declared at line beginning 709 specifies the maximum amount of trigger commands "trigCmd[16]". This constant however is not sufficient enough for certain levels resulting in writing to out of bound memory. As a result the stack is corrupted. This noticeably occurs in LEVEL4.PHD (St. Francis' Folly) Damocles key room, if you stand on the sector where the key is laid.
"info.trigCmd[info.trigCmdCount++] = trigCmd;" on line 1043 is where the out of bound writing occurs when info.trigCmdCount++ > 16.
I would suggest replacing the constant with a higher value and adding an assertion.
Cheers.
how i can get out of the watter, i press all the buttons but dont climb the plataform
Level: LEVEL1 (Caves)
Room: 24
Lara Position: 44699, 7168, 75609.
http://i.imgur.com/xcJZO2j.png
Issue: If you jump forward onto this slope (forward dive too) Lara will float up the slope.
Your README mentions that OpenLara is released under the terms of the 2-Clause BSD license.
Including a copy of the license in a file called LICENSE will allow GitHub to add which license is used for the repo to the info bar of the repository.
Furthermore including a copy of the license and setting the copyright year(s), author name(s) and author e-mail address(es) (or website(s) if you don't want to reveal your e-mail address) in it will allow your users to live up to the license, which has the following among its requirements:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
In GYM.PHD, simply turn around. Shortly before 180ยฐ there is a crash in MeshRange::bind, as it was called on a null object. Stack trace, as far as it's relevant:
#0 0x0000000100013c14 in MeshRange::bind(unsigned int*) const at OpenLara/src/mesh.h:33
#1 0x0000000100013ba1 in Mesh::render(MeshRange const&) at OpenLara/src/mesh.h:89
#2 0x0000000100013b71 in MeshBuilder::renderMesh(MeshBuilder::MeshInfo*) at OpenLara/src/mesh.h:694
#3 0x000000010002db57 in Level::renderRoom(int, int) at OpenLara/src/level.h:276
#4 0x000000010002d624 in Level::renderRooms() at OpenLara/src/level.h:458
#5 0x000000010002d302 in Level::renderScene() at OpenLara/src/level.h:472
#6 0x000000010000de95 in Level::render() at OpenLara/src/level.h:477
#7 0x000000010000af3a in Game::render() at OpenLara/src/game.h:39
The root problems appears to be in Level::renderRoom, where mesh->meshMap contains null for the index. The problem is easily patched over with an if check in that method, but I suspect the actual issue lies somewhere else entirely.
LEVEL2 (City of Vilcabamba)
Tested on: 5bc3ea6
Issue: https://www.youtube.com/watch?v=phVDvgZdqe4
Sometimes when executing this bug, the game will crash due to invalid zone/box index. https://github.com/XProger/OpenLara/blob/master/src/character.h#L53
Edit:
Exception thrown at 0x004154E7 in OpenLara.exe: 0xC0000005: Access violation reading location 0x0909A29E.
Level: LEVEL8A (City of Khamoon)
Room: 3
Lara Position: 25500, 2304, 15643
http://i.imgur.com/hqlpChi.png
If you pull the block out Lara is stood on in this screenshot, stand ontop of it then run forward, she will appear in the room below.
Level: LEVEL3A (Lost Valley)
Room: 1
Lara Position: 36763, -47, 74841.
http://i.imgur.com/yI2CCd1.png
Issue: Lara can run on water if you try to run forward from here. It is possibly because the floor is too low and Lara does not enter the fall state to initiate underwater transition states.
Here i will list which levels in OpenLara can be completed at this point in time (playable up until level end trigger). Based on: 36b7355
Other:
GYM (Lara's Home) - 100%
Peru:
LEVEL1 (Caves) - 100%
Known Bugs:
1. No collision on some static meshes.
2. Darts do not damage Lara.
3. #34
LEVEL2 (City of Vilcabamba) - 100%
Known Bugs:
1. No collision on some static meshes.
2. #35
3. #52
4. #39
LEVEL3A (Lost Valley) - 100%
Known Bugs:
LEVEL3B (Tomb of Qualopec) - 99%
Known Bugs:
1. No collision on some static meshes.
2. Playable up until scion pick up room. Lara cannot pick up the Scion from the pedestal in room 5 (unimplemented) so it's impossible to continue.
3. The head of mummies in Qualopec throne/scion room do not turn to face Lara.
4. One of the mummies (right) in Qualopec throne/scion room has no collision, ~also bad mesh on right side. #117 ~
5. One of the mummies is not activated when you stand infront of it or shoot it.
6. Game now freezes when attempting to pickup the Scion.
7. After killing Larson the level does not end.
Greece:
LEVEL4 (St Francis' Folly) - 100%
Known Bugs:
1. Heavy triggers not implemented, pushable block does not activate the door in room 0.
2. Lion/Gorilla/Crocodile death animation not triggered.
3. Pierre AI unimplemented.
4. Room 0, push the block ontop of the sector with symbols on. Take it off, if you now stand on the said sector you previously pushed the block ontop of, Lara will look at the item which was activated when the block was pushed ontop of the said sector.
5. Crocodile type is not switched to land when water room is drained.
6. When running through the drainable water room (beneath the second secret room). Water sound effect is played towards the drain exit.
7. Gate is not activated in the Atlas room when you pickup the key making it impossible to exit.
~8. Assertion hit in room 5 causes crash. #118 ~
LEVEL5 (Colosseum) - 100%
Known Bugs:
1. Impossible to leave the first room, once flag trigger doesn't appear to work so the door in start room 59 keeps opening and closing.
2. The switch which opens the gated door leading to another switch in the puzzle room that contains two raisable gates does not activate. This means Lara is unable to complete the puzzle to exit that room.
~3. #118 ~
4. Switch puzzle is still buggy, gates close too quickly and switches can desync.
LEVEL6 (Palace Midas) - 100%
Known Bugs:
1. Pulling any levers in room 29 opens all puzzle room doors containing lead bars.
2. Flip maps prevent two of the lead bars from being picked up.
3. Not possible to turn lead bars into gold bars (unimplemented).
4. #118
LEVEL7A (Cistern) - 100%
Known Bugs:
LEVEL7B (Tomb of Tihocan) - 100%
Known Bugs:
1. #40
2. #43
3. #88
4. #89
5. Pierre ai not implemented.
Egypt:
LEVEL8A (City of Khamoon) - 35%
Known Bugs:
1. #90 playable until room 18.
2. #36
3. #43
4. #119
LEVEL8B (Obelisk of Khamoon) - 100%
1. Puzzle items can now be collected because draw bridges are implemented. After picking up all 4 puzzle items the door to underwater, beneath the draw bridge area does not open.
LEVEL8C (Sanctuary of the Scion) - 100%
Known bugs:
1. Picking up scion will freeze the game.
2. #41
3. #120
Atlantis
LEVEL10A (Natla's Mines) - 100%
Known Bugs:
LEVEL10B (Atlantis) - 80%
Known Bugs:
LEVEL10C (The Great Pyramid) - 100%
Known Bugs:
One enemy can go inside the other:
Look here
Level: LEVEL8C (Sanctuary of the Scion)
https://www.youtube.com/watch?v=WAWv2aI9TJE
Demonstrated in video, allows players to vault up to walls they shouldn't.
LEVEL3B (Tomb of Qualopec)
Issue:
https://www.youtube.com/watch?v=Fv9idfZlMYQ
Jump back from this position as seen in the video. When Lara lands on the floor right close to the edge, press UP+Action she'll vault on thin air.
LEVEL2 (City of Vilcabamba)
Tested on: 5bc3ea6
This is most likely reproducible in various areas of the game.
Issue: https://www.youtube.com/watch?v=qt8Z58uVhRA
Walking forward towards the edge of the pool, when Lara stops and you are holding action she will vault some sector inside the pool.
Issue 2: https://www.youtube.com/watch?v=aAnaYmQ4rzc
Side stepping right towards the pool edge. If you hold action when Lara stops she will vault the nearest sector.
Issue 3: https://www.youtube.com/watch?v=g4BjG-juYKE
Same as issue 2 just tested in another area.
LEVEL8C (Sanctuary of the Scion) / LEVEL7A (Cistern) / LEVEL2 (City of Vilcabamba) / (Maybe others)
Works on: cd29100
Issue: Occasionally, Lara will miss slim ledges, somehow she's pushed and doesn't grab the ledge. This occurs on various levels
https://www.youtube.com/watch?v=nAZ7MFQEP-c
Level: LEVEL7B (Tomb of Tihocan)
Room: 20
Lara Position: 57879, 0, 16143.
Issue:
Water ripple effect does not work in this water room.
http://i.imgur.com/CxTSpmx.png
Issue 2:
http://i.imgur.com/YXurpuy.png
Strange flickering graphical artifacts occur at the ceiling of certain water rooms. This is likely the water ripple shader. Also occurs in LEVEL10B (Atlantis).
LEVEL7B (Tomb of Tihocan), LEVEL8A (City of Khamoon)
Works on: cd29100
Reproducible at the very beginning of both LEVEL7B and LEVEL8A.
Issue:
https://www.youtube.com/watch?v=QPYKhzRBQ-o
Happens when Lara vaults onto a pushable block from whilst inside a tunnel room. If you hold UP+Action Lara continues to vault up.
Edit: Lara remains stuck in Room 29, seems like room transition bug? Explains why Lara is invisible as soon as the glitch executes and she's inside other rooms.
All Levels.
Tested with: d3cf26a
Issue: Simply make Lara run forward then instantly press the walk button. She will stop then proceed to walk. In the original game Lara transitions directly to the walking animations.
All Levels.
Tested with: d3cf26a
Issue: Run Lara off a ledge, as she switches to free fall state, press shift key (walk), This will trigger Lara's unrecoverable fall animation too early.
Level: LEVEL2 (City of Vilcabamba)
Room: 69
Lara Position: 30820, -3328, 37136
http://i.imgur.com/ziygIMN.png
Issue: This trap floor does not activate if you stand on it.
medikit's, keys, weapons, ammos
LEVEL3A (Lost Valley)
Works on: cd29100
Issue:
https://www.youtube.com/watch?v=U6Tr40NnAQ4
Jumping back from this point, when Lara hits the wall she falls forward then appears ontop of the slope sector behind her.
LEVEL3A (Lost Valley)
Issue:
https://www.youtube.com/watch?v=HmJTy0mejMc
Hard to reproduce this one.
draw camera oriented sprites using shader
Level: LEVEL10A (Natla's Mines)
Room: 87 (Causes Crash)
Lara Position: 62618, -7859, 25880, Room 18 (Before the room that crashes)
Info: Crash happens when standing on portal sector from room 18 to room 87. Can be avoided by jumping over the sector.
Edit: Same crash occurs in room 33.
Level: LEVEL7A (Cistern) / LEVEL8A (City of Khamoon)
Room: 111
Lara Position: 33453, -1580, 58468
Issue 1:
http://i.imgur.com/PRF6GMg.png
Pressing UP+Action will allow Lara to grab slope edges which isn't possible in the original game.
Edit: https://www.youtube.com/watch?v=Bcvgv_6NqR0 This is also possible due to the ability to grab slope edges.
Issue 2:
http://i.imgur.com/r4iBYDO.png
Lara cannot jump up + hang to grab this wall. But if you climb on-top press back then grab. Lara can grab this wall which shouldn't be possible due to how low it is.
Issue 3: Referring to screenshot 2, if you pull up Lara will go into animation 42, vault up onto block but you can roll during this animation which shouldn't be possible.
Issue 4:
http://i.imgur.com/Ag0Nq59.png
If you run towards the corner of this floor point, Lara will collide with something invisible.
Issue 5:
If you tun towards this wall and press UP+Action Lara will vault the ledge below and clip through the wall.
http://i.imgur.com/09SMn4G.png
http://i.imgur.com/WoXrjM7.png
(Solved in: cd29100) Lara can no longer automatically vault this wall via up+action, will have to confirm if this is possible in the retail game.
Issue 6:
Lara cannot pull up here:
http://i.imgur.com/ZA80PFT.png
May be related to this same bug in LEVEL8A
http://i.imgur.com/YX6AxwX.png
Issue 7:
If you face a certain angle towards low walls, Lara can vault them and appear ontop of ledges.
https://www.youtube.com/watch?v=FyRvyxb310g
I know this is not an issue but don't know where else to ask.
Level: LEVEL2
Room: 61
Lara Position: 22176, -1024, 29487
https://www.youtube.com/watch?v=ky33Lc9AdTk
Info: As seen in the video, Lara can teleport to the switch when she's no where near it. I would suggest adding an extra conditional check to only teleport Lara to the switch if they're both on the same sector.
Shader implementation for changing texture coordinates (if it's in animation sequence) without rebuild VBO
I'm using Linux Mint 17 Cinnamon 64-bit, tested in Chrome Version 58.0.3029.81:
Exception thrown, see JavaScript console
Uncaught TypeError: Cannot read property 'getSupportedExtensions' of undefined
Also tested in FireFox Version 53.0:
Gah. Your tab just crashed.
Under what license is this project released under ? I would like to use it as a learning resource. I browsed the source code and it seems really well done.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.