SCPCBIrrlicht [Abandoned]

#1
I'm not longer working on this, and I don't know if I ever will return to it.

You can see the latest source on GitHub if you feel like contributing to the project.


Blitz3D is causing several issues with Windows 8 users, mostly because it uses DirectX 7 which has poor support, and it's difficult to maintain because the error messages are not clear. It also forces the game to be Windows-only.

Seeing as many ports to modern engines are progressing slowly, or have been cancelled, I decided to use the Irrlicht engine to have access to a lot of features and start working on recreating the game.
I also added irrDynamics (modified to be able to create rigid bodies with meshes) and the CGUITTFont class, so objects interact more realistically with the environment and there's anti-aliased text.

Previews:
[youtube]1xoZ-jVpCvU[/youtube][youtube]0xITwSLCFb8[/youtube][youtube]VNhVhnPZuXE[/youtube][youtube]wAYj2QBi3Gc[/youtube][youtube]qxfHUbdwpx8[/youtube][youtube]nejMdKzhU3o[/youtube][youtube]2MtkX7jUBmQ[/youtube][youtube]t-A0cX7KMOI[/youtube][youtube]Jw0sPYWhop8[/youtube]
Spoiler
Image
Spoiler
Image
Spoiler
Image
Spoiler
Image
Spoiler
Image
Downloads:
Sixth demo: https://www.dropbox.com/s/658vfpaxwwb4e ... 6.zip?dl=1

Old demos: Progress list:
SCP-714 (fully functional)
SCP-914 (fully functional, except for missing refinement results)
SCP-173 (missing efficient occlusion detection)
SCP-178 (only NPCs are done, item needs work)
SCP-970 (missing misc events)
SCP-096 (missing idle-to-aggro code)
SCP-106 (pocket dimension not implemented)
SCP-012 (only forcewalk implemented)
SCP-513 (animation loops not set, missing jumpscare code)
SCP-066 (not implemented as an NPC)
SCP-008 (not implemented)
SCP-035 (not implemented)
SCP-049 (not implemented)
SCP-079 (not implemented)
SCP-148 (not implemented)
SCP-205 (not implemented)
SCP-294 (not implemented)
SCP-372 (not implemented)
SCP-500 (not implemented)
SCP-860 (not implemented)
SCP-895 (not implemented)
SCP-939 (not implemented)
SCP-966 (not implemented)
SCP-1025 (not implemented)
SCP-1048 (not implemented)
SCP-1123 (not implemented)
SCP-1074 (scrapped)


GitHub repository: https://github.com/juanjp600/SCPCBIrrlicht/
Last edited by juanjp600 on Sun May 29, 2016 5:00 pm, edited 31 times in total.

Re: Irrlicht Port

#2
I like you choice of room to use :)
I'm certainly going to be keeping an eye on this. It's about time this game got a proper port since the others all unfortunately ended in disappointment. I believe that you however can actually pull this off. Best of luck to you! Out of interest, how much better is the new engine graphically?
Image

Re: Irrlicht Port

#3
Skin_ wrote:Out of interest, how much better is the new engine graphically?
I'm not particularly focusing on making the game look better right now, but it's possible to write custom shaders with this, so I might do something. It also has native support for parallax mapping and render-to-texture. Many special things can be done with this.

Re: Irrlicht Port

#4
juanjpro wrote:
Skin_ wrote: I'm not particularly focusing on making the game look better right now, but it's possible to write custom shaders with this, so I might do something. It also has native support for parallax mapping and render-to-texture. Many special things can be done with this.
Thanks for the quick reply, I think that'd be nice once everything else is out of the way.
Image

Re: Irrlicht Port

#5
Awesome man, how long have you been working on this so far?

What kind of things that were not possible/easily doable in Blitz3D could be possible here?

How is mapping handled in this engine? Is it still done with 3DWS?
sup

roger copy bravo tango mango

Re: Irrlicht Port

#6
Irontaco wrote:Awesome man, how long have you been working on this so far?
The project really started last Saturday, but I've been planning it for a few months.
Irontaco wrote:What kind of things that were not possible/easily doable in Blitz3D could be possible here?
This port should be cross-platform if I don't use the Windows API directly, Irrlicht handles stuff like that for me. Collision is faster and more reliable because of the Bullet Physics engine. And 2D stuff looks better too, because the engine mostly uses the graphics hardware to draw to the screen.
Irontaco wrote:How is mapping handled in this engine? Is it still done with 3DWS?
The rooms are still the ones made in 3DWS, since lightmaps are a pretty good way to keep good performance. Dynamic shadows could be added on top of this, though that's not my main focus right now. Many popular file formats are supported as well, so maybe a better editor could be used.

Edit: now the 173 clones are much "heavier"
Last edited by juanjp600 on Fri Aug 22, 2014 12:15 am, edited 1 time in total.

Re: Irrlicht Port

#8
I was looking at the static mesh compatibilities and between them it says .BSP, does that mean it supports Source SDK's map files? I was planning to do a mapping overhaul for the game but 3D World Studio just seems too limited and buggy, along with the map proportions Regalis told me to adhere to when talking to him about it.

Can the map generation be handled in another way so the rooms dont have to be restricted to specific sizes?

Physics-related stuff sounds specially neat for this, having physics puzzles in SCP:CB or something in that style would expand the playability a lot.

A example of this could be for example, a broken walkway high up, you could probably ignore that path branch and miss potentially good stuff, or you could gather random props from a few places and attempt to make a bridge, etc etc. Or throwing objects agaisn't some NPCs like 049 or the MTFs. Or for example, using the anti-memetic metal (forgot the number) in a physics prop way instead of having it in the inventory.

But of course, instead of carying about features (supposing you possibly wanting to add them) it's probably better to wait for the whole thing to be completed, good luck on this, and thanks for the answers.

I'm not too interested in parallax mapping or any graphics-directed changes, to be honest; here's a old post from MonocleBios, related to a engine changing petition.
MonocleBios wrote:asking the guy who has done so much work to just port it because 'it looks better' is downright ignorant.
/rant
If anything, the fact of it becoming more stable, compatible in more computers, and etc etc is enough.

not to mention why would you even bother with parallax mapping in a game that reuses the same 14-ish textures constantly
sup

roger copy bravo tango mango

Re: Irrlicht Port

#9
Irontaco wrote:I was looking at the static mesh compatibilities and between them it says .BSP, does that mean it supports Source SDK's map files? I was planning to do a mapping overhaul for the game but 3D World Studio just seems too limited and buggy, along with the map proportions Regalis told me to adhere to when talking to him about it.
I think the engine only natively supports Quake 3 BSP. Since the Source SDK seems to be better than 3DWS, I could add a simple loader for that format. Or maybe I could just write a simple BSP-to-RMESH converter.
Irontaco wrote:Can the map generation be handled in another way so the rooms dont have to be restricted to specific sizes?
It should be possible even in Blitz3D, but the whole map generation algorithm would need to be remade. I might try to implement it anyway.
Irontaco wrote:Physics-related stuff sounds specially neat for this, having physics puzzles in SCP:CB or something in that style would expand the playability a lot.
I imagined the player being able to push 173 out of the way if it's blocking the door. The physics could be messed up in the pocket dimension as well.

Re: Irrlicht Port

#10
juanjpro wrote:
Irontaco wrote:I was looking at the static mesh compatibilities and between them it says .BSP, does that mean it supports Source SDK's map files? I was planning to do a mapping overhaul for the game but 3D World Studio just seems too limited and buggy, along with the map proportions Regalis told me to adhere to when talking to him about it.
I think the engine only natively supports Quake 3 BSP. Since the Source SDK seems to be better than 3DWS, I could add a simple loader for that format. Or maybe I could just write a simple BSP-to-RMESH converter.
Hm, even i am not sure if that might work; Hammer uses entities that are supposed to be specific for Source, to be able to make these work we would probably have to create specific .fgds or something, or probably something similar to the way waypoints are done in SCP:CB, using a empty entity with a custom name, and the code decides what to do with the named entities in the map. Or something like that, i'm kinda rambling.
juanjpro wrote:
Irontaco wrote:Physics-related stuff sounds specially neat for this, having physics puzzles in SCP:CB or something in that style would expand the playability a lot.
I imagined the player being able to push 173 out of the way if it's blocking the door. The physics could be messed up in the pocket dimension as well.
Considering 173 is made out of concrete and rebar, and is about 1.8 to 2 meters tall, with calculations made by some friends, the approximate weight of 173 should be in the area of 284-317 kg (probably the higher tier), without rebar being in consideration (if it had a rebar skeleton inside it'd add about 50kg~ more.).

Code: Select all

Çeldur: i assumed that the head is about 0.715m x 0.429m x 0.429m
Çeldur: and the body is about 1.287m x 0.286m x 0.286m
This means a regular human probably wouldn't have a easy time pushing it, or would probably be unable to; and considering 173 has a center of mass high up, you would probably end up tipping it over instead of sliding it gently across the ground; which would probably look kinda amusing.

Maybe pushing 173 could be possible if using the super gas mask.

Strange physics in the pocket dimension sounds good, like suddenly the gravity being fucked with so you end up wobbling across the walls and ceilings.
sup

roger copy bravo tango mango