Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Blitz Research

92
Posts
4
Topics
432
Followers
139
Following
A member registered Jan 18, 2017 · View creator page →

Creator of

Recent community posts

TBH, I would not recommend starting a new project in Blitz3D unless you wanting to support ancient versions of Windows, in which case you can use Blitz3DxWin95 to produce Windows95 compatible apps. Blitz3D is 20-ish years old by now and the development environment and underlying technology are very outdated.

I would personally recommend Raylib your favoruite language if you enjoy programming everything by hand, or Godot if you're into GUIs.

(2 edits)

This is probably a false positive (the Wacatac one esp. comes up a lot) and there is nothing I can do about these.

I have started posting hashcodes for all zip downloads at the bottom of the devlog release announcement posts. If you run certutil on the downloaded zip, eg:

cvertutil -hashfile blah.zip SHA256

...and it comes up with the same SHA256 number, then the file you have received is at least the file I sent, meaning at least it hasn't been interferred with en-route. Past that, it's purely up to you whether you trust that I sent a 'clean' file in the first place or not.

You can also send the file to 'Virus Total' online but that does sometimes come back with a few false positives too - esp. through the 'AI' virus checkers. Bye, Mark

No, you're not dumb, well spotted, the new syntax only works for vars declared explicitly Local or Global, eg: 'Local tmp:Str ="Hello"'

I forgot you could also declare vars implicitly. I may fix this, but I'm actually tempted to remove 'implicit decls' like this from modern dialect completely.

My bad, you should get an error if /* and */ are mismatched.

This is the LibSGD library, more info here:

https://blitzresearch.itch.io/blitz3d/devlog/688259/libsgd-announcement

It's basically a replacement 'runtime.dll' that provides a different, more advanced set of 3d functions to Blitz3D.

It's taking longer than I would have liked, but it's getting there. I am definitely aiming for V1.0 before the end of the year.

(1 edit)

Blitz3D LibSGD.

Thanks!

> Mark, any chance Blitz3d could ever come to Mac?

Probably not.

DirectX never made it to Macos - ionstead they came up with their own 3d API 'Metal' which is similar to 'Direct3D'.

LibSGD *is* coming to Mac though. LibSGD is a simple gamedev library for use with a bunch of languages and it already works with Blitz3D (which is largely why I'm back working on Blitz3D in the first place) but there are no plans to convert Blitz3D to macos.

But I would like to do another language one day, but only if I ever feel like I have something new to contribute again, so while Blitz3D will never make it to MacOS, who knows what might one day.

These are false positives (the Wacatac one esp. comes up a lot) and there is nothing I can do about them.

I have started posting hashcodes for all zip downloads though - bottom of the post. If you run certutil on the downloaded zip, eg:

cvertutil -hashfile blah.zip SHA256

...and it comes up with the same SHA256 number, then the file you have received is at least the file I sent, meaning at least it hasn't been interferred with en-route.

Past that, it's purely up to you whether you trust that I sent a 'clean' file in the first place or not.

You can also send the file to 'Virus Total' online but that does sometimes come back with a few false positives too - esp. through the 'AI' virus checkers.

Bye,
Mark

I went down that road with Monkey!

Nope, although there's a version in the works that will support d3d12, d3d11 and vulkan.

Blitz3D isn't 'made for Windows 11' (not sure anything is yet?) but I haven't had any reports of it not working on Windows 11 yet either. What are the issues you are experiencing?

But Blitz3D is getting pretty old by now, and it's pretty likely it wont be a 'comfortable' choice for users who are used to more modern tools. It seems to be mostly popular with people writing retro games these days.

It should be possible to do this with a simple userlib. Here's a thread on the topic - 20 years old but it might be useful!

https://archive.blitzcoder.org/forums/b3d-programming/53540.html

What does the error say?

That would be great thanks.

(1 edit)

Well, I've heard back from the FMOD author and the new licensing system apparently applies to anything released in future using FMOD, regardless of whether Blitz3D was purchased or not.

I strongly disagree with this interpretation, but I no longer have the contract from 20 years ago (not sure I ever did, I think Guildhall did all that) and it's conceivable the contract did have the famous 'no engines' clause in it and no one noticed, and I have neither the time, energy or money to argue it anyway, so I'm just gonna leave it at that.

But in light of this development, I have put together a version of Blitz3D that's  Windows 95 compatible and  that uses SoLoud instead of FMOD. More details here:

https://blitzresearch.itch.io/blitz3d/devlog/754345/blitz3dx95-v1109-for-windows...

I would love to hear how people get on with this, I've only been able to test it on an emulator and that's pretty ropey with *all* audio. But it is at least recognizable and the 3d stuff appears to be working.

Bye!
Mark

(2 edits)

> How does this affect people who purchased Blitz3D? Can anything made with it be distributed commercially without issues?

I think people who bought Blitz3D back in the day would be okay (not sure if that includes 1.108 though, if you got it from here at itch probably not) because those versions don't need to ship fmod.dll which is what the license is all about I think. Instead, the audio code will have been statically linked into the exes.

But this is just a guess, I obviously suck at this stuff so have put the question forward to the FMOD guy and will let you know as soon as I get his reply.

Bye,
Mark

Thanks!

(1 edit)

OK, so I submitted the entire zip to microsoft for malware analysis and there were too many files in it, so I resubmitted the binaries only and nothing was found. Note the submission was for testing with MS Defender for Windows 11, their submission process only allows you to test one tool at a time and I'm guessing the above screensheet is Windows11 .

So I guess until software signing becomes free or at least realistically affordable for indie/open source devs, we're just gonna have to put up with this bullshit.

Signing is apparently expensive because of the need for 'auditing' (which imagine would be another barrier for indie devs), yet 'LetsEncrypt' website signing is free and all you need for that is the server you plan to use. I guess proof that you have write access to the server is good enough proof of identity - or at least proves you're responsible for it - and there's no real equivalent in software development?

I do plan to start including hashes with my downloads in future though. Just as there's a chance Blitz3D-V1.113.zip contained malware when I uploaded it, there's also a  chance the zip was infected somehow 'in transit', and hashes are a simple way of proving at least that (alomst certainly) hasn't happened.

I haven't found anyone interested in my 'double building' idea yet though, so you'll still have to trust the zip wasn't infected 'at source'.

OK, tried uploading the entire zip, but it apparently contains too many files so I'm trying again with just the binaries...

(1 edit)

OK, I looked into this further, and while the cost of code signing is slightly less than I thought, it's still more than Blitz3D is likely to make over the rest of it's entire lifetime so it's still impractical. In fact, it's likely to be impractical for a ton of open source software unless it becomes very cheap or free.

As far as I can work out, MS don't make any money out of the system (above board anyway) so it feels slightly less protection rackety to me now. Although, still, it feels kind of 'off' to me that signed software gets treated diffrently by virus checkers, like sneaking the bouncer a tenner to get in the door or something!

There are apparently moves afoot to offer free or at least cheap certificates for open source software (similar to how 'LetsEncrypt' offers free certificates for websites, like mine) so maybe one day signing could make sense for things like blitz3d, but not yet.

I do think my releases would benefit from adding a hash/checksum, as there's currently no way to tell if the download is being corrupted 'in transit' after it left my computer. And who knows, maybe this is already happening with some of the MS Defender alerts? I guess 'signed' software would at least get picked up if something tried to infect it, but blitz3d wouldn't.

That's a good idea, I've sent MS b3d zips before to get checked but have never heard back from them, might try it again.

If it does work, it means having to do it every release I guess, but that's OK except there'd be a 'window' of false positives, unless you sent it long enough before release.

(1 edit)

No way is that practical for me - I hardly sell any b3d's, it's more just a hobby for me at this point.

Also, the whole thing sounds like a huge 'protection racket' to me. I assume Windows Defender qwill be more 'tolerant' towards signed releases, but is signed software really always free of viruses?

I already pay my Windows tax dutiful, do I really also need to pay a zip tax too now?!?

These look fantastic - I will give them a try this weekend!

Hi Apry24, I doubt your PC is infected as I have started getting the same warning from MS Defender for V1.112 too!

I have discovered through researching  this that simply changing compiler settings or even just renaming functions are enough to cause positives where there were none before.

So I have just released Blitz3DV1.113 which is just V1.112 but rebuilt with the latest MSVC compilers and tools, and the final zip is not triggering MS Defender so please give this a try.

See my latest dev-log post about this...

(2 edits)

I hd a closer look at this today, and I'm 99.97% sure it's a false positive.

I had a look at it on the Virus Total website, which does report some of the exes and dlls contained in the zip to be suspicious, but only by a small number of virus checkers (it' s a 'meta' checker) and all weird ones I'd never header of, none of the 'big name' ones.

So I went and rebuilt the entire Blitz3D packge from scratch using slightly different compiler flags to see if that made a difference and checked it again, and it did! I got a totally different results with fewer false positives (still not 0 though). So it's almost tempting to 're-release' this version as a fix,  but I wont be doing that as I don't want to have to be effectively 'randomizing' compiler settings for each release to suppress virus checkers, that's just nuts for a whole lotta reasons.

I guess there's a chance that my machine has been infected by something that infects exes I build using MSVC, but short of reinstalling the whole OS (and I'm not even sure that's enough any more) I don't know if there's anything I can do about that. My machine is regularly checked by MS Windows Defender and I recently checked everything with Bitkeeper for variety which did quarantine a few things I'd never heard of (and similarly have no way of knowing if they were 'real' problems or not) but otherwise said my machine was healthy.

I am getting no report of a virus with MS window Defender here, and I believe this to be a false positive.

Either way, I have no way to 'correct' this.

I can arrange a refund for your recent purchase if you would like.

Bye,
Mark

Nope, I use Glfw to do this in SGD, you could dig into that and find out how they do it.

No idea sorry, maybe see if you can narrow down what the machines in question have in common - graphics card, virus checker etc?

You'd think by know I'd have a checklist of these sort of variables, but alas I don't...

(1 edit)

Apparently this has already been added:

https://github.com/blitz-research/blitz3d_msvc2017/pull/1

Try using texture flag 1024 to disable bilinear filtering.

Thanks, Xaron(?)

> Would love to see some modernisation of blitz3D too.

At the very least, I want a bigger toolbar and font, I'm not working in 1024x768 any more and my eyes are 20 years crappier!

Raylib has definitely helped inspire me to get back into things! But AFAIK it's pretty much 'direct mode' only and primarily 2D, whereas I wanted to go for a more 3d oriented scene graph approach.

I do dig raylib's 'DrawModel' command and briefly considered using a more direct approach like that, but it can't handle multiple passes for things like transparency so the user would end up having to write their own 'scene' system anyway. Besides, as you say, there's already Raylib! It runs on a ridiculous number of languages too, mainly thanks to 3rd party support, there're probably Fortran and COBOL versions out there somewhere!

I've never heard of sokol_gfx (will do) but I did take a look at bgfx and although it's very nicely done and apparently works very well, I was after something a bit more modern, and Webgpu is (apparently) modelled on the way modern gpu's work while offering a high-ish level interface so I went with that. Also, the fact it's a google thing means they're gonna make sure it works well on as wide a range of hardware as possible. I've been following development quite closely, and the people writing it go to a huge amount of effort to make sure the stuff they're adding really will work everywhere.

 I actually think the use of 'native webgpu' drivers like dawn and gfx-rs (the rust version in firefox) could take off in a big way, as they turn behemoths like d3d12 and vulkan into a much more usable API: https://webgpu.rocks/reference/interface/gpudevice/#idl-gpudevice

Thanks Mike!

I really enjoyed this, gameplay is simple but lots of fun and the plot is surprisingly involving and occasionally even quite moving.

Just finished this and wow, great game!

Very surreal and even slightly disturbing at times, just my cup of tea!

Looking forward to playing more of these...

Nice!

Hi,

My app page currently has a single comments thread only.

If I also enable the discussion board, will this overwrite the comments thread or will I get both?

Bye!
Mark

Hi,

There's a minor typo on the 'Dashboard/Interact' page: "...if we recieve a high number of reports..."

The 'recieve' should of course be 'receive' according to the 'i before e except after c' rule (and a dictionary check)!

Bye,
Mark

Thanks for the kind words!