Blockly meets Battlefield? (portal the builder)

144 views
Skip to first unread message

Jonty Small

unread,
Jul 22, 2021, 4:11:01 PM7/22/21
to Blockly
Hi all,

I saw an announcement which was certainly a connection I never throught I would see.

Battlefield 2042, the new first person shooter by ea is going to have a blockly esque game mode builder in it.

It looks super cool in my opinion and should work as some inspiration for those looking for new interesting design choices of their blocks! Its definitely got me inspired to take another run at our design choices.

I wanted to see if anyone knew about this beforehand or worked on it? I'm 99% sure its built with blockly (pxt reindeer connections seem a dead giveaway) but there's always a chance they rebuilt the wheel from the ground up. 

If anyone on the dev team is here and you're allowed to share about how you did things i'd love to know how you put the ? icon inside the value input and the the other icon? as its actually something we're trying to do right now.

Generally though I think this is a testament to Blockly as a tool, perhaps we'll start seeing lots more blockly products in the near future! 

Best,
Jonty










image_2021-07-22_205801.png

Johnny Oshika

unread,
Jul 29, 2021, 7:32:32 PM7/29/21
to Blockly
That's pretty cool!

Gautam Muralidhar

unread,
Nov 24, 2021, 11:54:35 PM11/24/21
to Blockly
I'd love to chat with you guys. I am the Technical Director on Battlefield Portal and have some information that I could possibly share. There are also a lot of things I would love to see improved in Blockly, yes we are using Blockly 😁 and not PXT.
Hit me up.
Gautam Muralidhar

Beka Westberg

unread,
Nov 25, 2021, 9:33:24 AM11/25/21
to blo...@googlegroups.com
Oh my gosh, that is so cool! I'm super curious, if you're not using pxt, does that mean you reimplemented reindeer connections? Personally I would love to see those as a plugin :D I'm also curious about your suggestions for improvements. I always love to hear about how the project can be made better for users. What were the big sticking points for your project?

Also I just wanted to warn you, it is American Thanksgiving, so it'll probably be sometime next week before the core team has a chance to reply.

Best wishes! I hope you have a great Thanksgiving/Thursday =)
--Beka

--
You received this message because you are subscribed to the Google Groups "Blockly" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blockly+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/blockly/b155a41e-02aa-477e-ae70-0f26df9a868en%40googlegroups.com.

Gautam Muralidhar

unread,
Nov 27, 2021, 2:04:21 AM11/27/21
to Blockly
The biggest pain point was not having typescript support for Blockly. I know there is some but mostly incomplete. For example getting the connection rendering to work was a painful process because I had to extend zelos which has no typings so a lot of "hacks" to get this to work.

Happy Thanksgiving giving to you too! I am on vacation too for Thanksgiving, I work out of California 😊

Mark Friedman

unread,
Nov 27, 2021, 7:18:28 PM11/27/21
to blo...@googlegroups.com
I'm just curious as to why the lack of TypeScript typings meant that you had to resort to hacks?  Is it because you needed to integrate Blockly with some existing TypeScript code, so you needed to do things like declaring variables or casting values to the "any" type?

-Mark


Beka Westberg

unread,
Nov 28, 2021, 2:49:15 PM11/28/21
to blo...@googlegroups.com
> The biggest pain point was not having typescript support for Blockly. I know there is some but mostly incomplete.

Honestly it's good to hear that that's the biggest thing! The Blockly team talked a lot at the last conference about moving to TypeScript, and I now they've been working hard over the past year to get there. So hopefully soon this trouble will be a thing of the past!

> For example getting the connection rendering to work was a painful process because I had to extend zelos...

Dude you are so brave! Rendering is probably the part of the library I know the least about. And going in there without types and getting something as lovely as what you got is awesome.

Thank you for sharing what working with the library was like! It's always awesome to hear from enterprise people using Blockly =)
--Beka

Gautam Muralidhar

unread,
Dec 1, 2021, 11:18:05 PM12/1/21
to Blockly
Mark,
That was part of it, or using ts-ignores (so we don't have compile errors). Or even declaring our own abstract typings files for things that don't exist in typings like some of the low level rendering apis. A lot of other typings are basically missing from various classes causing the usage of ts-ignores in a lot of places.
I am looking forward to the fully functional typescript API of Blockly.
 -Gautam

Mark Friedman

unread,
Dec 2, 2021, 12:11:39 PM12/2/21
to blo...@googlegroups.com
Fair enough, Gautam. I'm not sure I would consider those to be hacks, but I guess that is just semantic quibbling ;-)

-Mark


feni...@google.com

unread,
Dec 2, 2021, 1:18:08 PM12/2/21
to Blockly
Hi Gautam! Great to hear from you, and I definitely want to set up some time to chat with you--ideally after we get this next release out on December 9. I'll email you separately to set that up.

The great news on Typescript is that I'm going to work on getting the typescript compiler and toolchain up and running next quarter. Optimistically, we'll be at least partially a typescript library by the end of Q1, and we'll definitely be there by the end of Q2. The code is currently in an uneasy in-between state so I'm highly motivated to make the leap.

The goog.module work we've been doing in the last two quarters has been critical for Typescript, because it forced us to straighten out lots of pieces of our code that relied on everything being in a shared global namespace. JavaScript is great until I get bitten by something clever I did four years ago.

The less great news on Typescript is that we don't automatically get better type annotations for rendering code, because all of that is annotated with JSDoc that just says "Object". But I think the tooling will make it easier to get to more specific types there.

Cheers,
Rachel

Gautam Muralidhar

unread,
Dec 2, 2021, 11:31:59 PM12/2/21
to Blockly
Look forward to chatting with you and your team in the coming weeks!

Gautam
Reply all
Reply to author
Forward
0 new messages