1
0
mirror of https://github.com/tobspr/shapez.io.git synced 2025-12-13 02:01:51 +00:00
Commit Graph

28 Commits

Author SHA1 Message Date
Даниїл Григор'єв
1be520afb9
Clean up and update workspace files
* Remove deprecated TSLint config

* Remove jsconfig.json

jsconfig.json is an alternative name for tsconfig.json that has allowJs
set to true. Since the directory already contains a tsconfig.json file,
this file does nothing.

* Remove Gitpod configuration

Gitpod is not as useful in CE because we're focusing on standalone.
Also, the configuration was added just to promote the service and there
are other similar services which may be preferred by the user.

* Remove Travis CI configuration

Travis CI is not used in shapez anymore in favor of GitHub Actions. In
addition to that, CI setup for the community edition will be done once
the codebase is in a better condition.

* Remove CONTRIBUTORS and CONTRIBUTING.md

The contributors file is out of date and unneeded as GitHub now shows
all collaborators anyway - however it could be still used in the future
to show a list of contributors in the game. CONTRIBUTING.md contains the
text of CLA, which is not enforced in this repository.

* Replace VSC workspaces with regular settings files

VSCode workspaces don't provide much benefit in a source tree like
shapez. This commit also adds EditorConfig and ESLint VSCode extensions
to the recommended extensions list.

* Remove CI workflow for building the game

It hasn't been updated in a while and we don't need it for now. Once the
codebase is in a more managable state, a new workflow will be added.

* Remove some unused resources

There are still many resources left, but they will be removed along with
the relevant code later.
2023-10-25 08:05:56 +03:00
tobspr
96ce442b69 Update favicon and improve loading time 2022-06-16 09:58:12 +02:00
tobspr
918dd5dc25 Allow steam:// protocol links 2022-06-15 12:28:14 +02:00
tobspr
9c247f3756 Revert to electron 16 since 18 causes issues with proton 2022-06-05 21:02:14 +02:00
tobspr
dea9008c11 Fix invalid abi binaries for greenworks 2022-06-02 20:05:33 +02:00
tobspr
bbb418a1d8 v1.5.2 2022-06-02 19:44:50 +02:00
tobspr
559c0fa854 Rebranding and minor polishing, part 2 2022-06-02 14:06:33 +02:00
tobspr
a3a72e95ad MacOS Support 2022-04-13 15:43:58 +02:00
Emerald Block
dab4aa9cda
fix fs-job sanitization (#1375) 2022-02-13 21:07:02 +01:00
tobspr
c0d034520a Fix wrong if clause 2022-02-04 09:53:44 +01:00
WaffleDevsAlt
edd57b3956
Fixed extremely unimportant typo. (#1368)
'ot' to 'to'
2022-02-03 08:40:32 +01:00
tobspr
c41aaa1fc5
Mod Support - 1.5.0 Update (#1361)
* initial modloader draft

* modloader features

* Refactor mods to use signals

* Add support for modifying and registering new transltions

* Minor adjustments

* Support for string building ids for mods

* Initial support for adding new buildings

* Refactor how mods are loaded to resolve circular dependencies and prepare for future mod loading

* Lazy Load mods to make sure all dependencies are loaded

* Expose all exported members automatically to mods

* Fix duplicate exports

* Allow loading mods from standalone

* update changelog

* Fix mods folder incorrect path

* Fix modloading in standalone

* Fix sprites not getting replaced, update demo mod

* Load dev mod via raw loader

* Improve mod developing so mods are directly ready to be deployed, load mods from local file server

* Proper mods ui

* Allow mods to register game systems and draw stuff

* Change mods path

* Fix sprites not loading

* Minor adjustments, closes #1333

* Add support for loading atlases via mods

* Add support for loading mods from external sources in DEV

* Add confirmation when loading mods

* Fix circular dependency

* Minor Keybindings refactor, add support for keybindings to mods, add support for dialogs to mods

* Add some mod signals

* refactor game loading states

* Make shapez exports global

* Start to make mods safer

* Refactor file system electron event handling

* Properly isolate electron renderer process

* Update to latest electron

* Show errors when loading mods

* Update confirm dialgo

* Minor restructure, start to add mod examples

* Allow adding custom themesw

* Add more examples and allow defining custom item processor operations

* Add interface to register new buildings

* Fixed typescript type errors (#1335)

* Refactor building registry, make it easier for mods to add new buildings

* Allow overriding existing methods

* Add more examples and more features

* More mod examples

* Make mod loading simpler

* Add example how to add custom drawings

* Remove unused code

* Minor modloader adjustments

* Support for rotation variants in mods (was broken previously)

* Allow mods to replace builtin sub shapes

* Add helper methods to extend classes

* Fix menu bar on mac os

* Remember window state

* Add support for paste signals

* Add example how to add custom components and systems

* Support for mod settings

* Add example for adding a new item type

* Update class extensions

* Minor adjustments

* Fix typo

* Add notification blocks mod example

* Add small tutorial

* Update readme

* Add better instructions

* Update JSDoc for Replacing Methods (#1336)

* upgraded types for overriding methods

* updated comments

Co-authored-by: Edward Badel <you@example.com>

* Direction lock now indicates when there is a building inbetween

* Fix mod examples

* Fix linter error

* Game state register (#1341)

* Added a gamestate register helper

Added a gamestate register helper

* Update mod_interface.js

* export build options

* Fix runBeforeMethod and runAfterMethod

* Minor game system code cleanup

* Belt path drawing optimization

* Fix belt path optimization

* Belt drawing improvements, again

* Do not render belts in statics disabled view

* Allow external URL to load more than one mod (#1337)

* Allow external URL to load more than one mod

Instead of loading the text returned from the remote server, load a JSON object with a `mods` field, containing strings of all the mods. This lets us work on more than one mod at a time or without separate repos. This will break tooling such as `create-shapezio-mod` though.

* Update modloader.js

* Prettier fixes

* Added link to create-shapezio-mod npm page (#1339)

Added link to create-shapezio-mod npm page: https://www.npmjs.com/package/create-shapezio-mod

* allow command line switch to load more than one mod (#1342)

* Fixed class handle type (#1345)

* Fixed class handle type

* Fixed import game state

* Minor adjustments

* Refactor item acceptor to allow only single direction slots

* Allow specifying minimumGameVersion

* Add sandbox example

* Replaced concatenated strings with template literals (#1347)

* Mod improvements

* Make wired pins component optional on the storage

* Fix mod examples

* Bind `this` for method overriding JSDoc (#1352)

* fix entity debugger reaching HTML elements (#1353)

* Store mods in savegame and show warning when it differs

* Closes #1357

* Fix All Shapez Exports Being Const (#1358)

* Allowed setting of variables inside webpack modules

* remove console log

* Fix stringification of things inside of eval

Co-authored-by: Edward Badel <you@example.com>

* Fix building placer intersection warning

* Add example for storing data in the savegame

* Fix double painter bug (#1349)

* Add example on how to extend builtin buildings

* update readme

* Disable steam achievements when playing with mods

* Update translations

Co-authored-by: Thomas (DJ1TJOO) <44841260+DJ1TJOO@users.noreply.github.com>
Co-authored-by: Bagel03 <70449196+Bagel03@users.noreply.github.com>
Co-authored-by: Edward Badel <you@example.com>
Co-authored-by: Emerald Block <69981203+EmeraldBlock@users.noreply.github.com>
Co-authored-by: saile515 <63782477+saile515@users.noreply.github.com>
Co-authored-by: Sense101 <67970865+Sense101@users.noreply.github.com>
2022-02-01 16:35:49 +01:00
tobspr
d7abdfef90 Try out new DLC ownership checkling 2021-06-23 07:59:03 +02:00
tobspr
291614cb3c Support for building wegame specific version 2021-05-25 21:29:44 +02:00
tobspr
42af2b63d6 Authorize via steam 2021-05-23 17:28:39 +02:00
tobspr
329cefb3c9 Authorize via steam for the puzzle api 2021-05-23 17:34:13 +02:00
tobspr
931c8a5821
Puzzle DLC (#1172)
* Puzzle mode (#1135)

* Add mode button to main menu

* [WIP] Add mode menu. Add factory-based gameMode creation

* Add savefile migration, serialize, deserialize

* Add hidden HUD elements, zone, and zoom, boundary constraints

* Clean up lint issues

* Add building, HUD exclusion, building exclusion, and refactor

- [WIP] Add ConstantProducer building that combines ConstantSignal
and ItemProducer functionality. Currently using temp assets.
- Add pre-placement check to the zone
- Use Rectangles for zone and boundary
- Simplify zone drawing
- Account for exclusion in savegame data
- [WIP] Add puzzle play and edit buttons in puzzle mode menu

* [WIP] Add building, component, and systems for producing and
accepting user-specified items and checking goal criteria

* Add ingame puzzle mode UI elements

- Add minimal menus in puzzle mode for back, next navigation
- Add lower menu for changing zone dimenensions

Co-authored-by: Greg Considine <gconsidine@users.noreply.github.com>

* Performance optimizations (#1154)

* 1.3.1 preparations

* Minor fixes, update translations

* Fix achievements not working

* Lots of belt optimizations, ~15% performance boost

* Puzzle mode, part 1

* Puzzle mode, part 2

* Fix missing import

* Puzzle mode, part 3

* Fix typo

* Puzzle mode, part 4

* Puzzle Mode fixes: Correct zone restrictions and more (#1155)

* Hide Puzzle Editor Controls in regular game mode, fix typo

* Disallow shrinking zone if there are buildings

* Fix multi-tile buildings for shrinking

* Puzzle mode, Refactor hud

* Puzzle mode

* Fixed typo in latest puzzle commit (#1156)

* Allow completing puzzles

* Puzzle mode, almost done

* Bump version to 1.4.0

* Fixes

* [puzzle] Prevent pipette cheats (miners, emitters) (#1158)

* Puzzle mode, almost done

* Allow clearing belts with 'B'

* Multiple users for the puzzle dlc

* Bump api key

* Minor adjustments

* Update

* Minor fixes

* Fix throughput

* Fix belts

* Minor puzzle adjustments

* New difficulty

* Minor puzzle improvements

* Fix belt path

* Update translations

* Added a button to return to the menu after a puzzle is completed (#1170)

* added another button to return to the menu

* improved menu return

* fixed continue button to not go back to menu

* [Puzzle] Added ability to lock buildings in the puzzle editor! (#1164)

* initial test

* tried to get it to work

* added icon

* added test exclusion

* reverted css

* completed flow for building locking

* added lock option

* finalized look and changed locked building to same sprite

* removed unused art

* added clearing every goal acceptor on lock to prevent creating impossible puzzles

* heavily improved validation and prevented autocompletion

* validation only checks every 100 ticks to improve performance

* validation only checks every 100 ticks to improve performance

* removed clearing goal acceptors as it isn't needed because of validation

* Add soundtrack, puzzle dlc fixes

Co-authored-by: Greg Considine <gconsidine@users.noreply.github.com>
Co-authored-by: dengr1065 <dengr1065@gmail.com>
Co-authored-by: Sense101 <67970865+Sense101@users.noreply.github.com>
2021-05-23 16:32:05 +02:00
Thomas (DJ1TJOO)
22b8777aa0
Changed electron fs-job to invoke, for simplefying storage (#1106)
* Changed electron fs-job to invoke, for simplefying storage
(And it helps for the modloader)

* Reverted some unneeded chages

* Uploaded wrong file

* Removed uneeded promise
2021-03-16 17:59:23 +01:00
Tobias Springer
858057c5a9 Switch to electron 10 2021-03-14 08:56:48 +01:00
tobspr
5dddb846ef Attempt #1 on preserving savegame files 2021-03-14 08:51:10 +01:00
Tobias Springer
c6e18e9beb Minor release adjustments 2021-03-10 10:49:54 +01:00
Greg Considine
26b842494f
Achievements (#1087)
* [WIP] Add boilerplate for achievement implementation

* Add config.local.template.js and rm cached copy of config.local.js

* [WIP] Implement painting, cutting, rotating achievements (to log only)

* [WIP] Refactor achievements, jsdoc fixes, add npm script

- Refactor achievements to make use of Signals
- Move implemented achievement interfaces to appropriate
platform folders (SteamAchievements in currently in use
in browser wrapper for testing)
- Fix invalid jsdocs
- Add dev-standalone script to package.json scripts

* Add steam/greenworks IPC calls and optional private-artifact dependency

* Include private artifacts in standalone builds

* Uncomment appid include

* [WIP] Add steam overlay fix, add hash to artifact dependency

* Update electron, greenworks. Add task to add local config if not present

* Add more achievements, refactor achievement code

* Add receiver flexibility and more achievements
- Add check to see if necessary to create achievement and add receiver
- Add remove receiver functionality when achievement is unlocked

* Add achievements and accommodations for switching states
- Fix startup code to avoid clobbering achievements on state switch
- Add a few more achievements

* Add achievements, ids. Update names, keys for consistency

* Add play time achievements

* [WIP] Add more achievements

* Add more achievements. Add bulk achievement check signal

* [WIP] Add achievements. Start savefile migration

* Add achievements. Add savefile migration

* Remove superfluous achievement stat

* Update lock files, fix merge conflict
2021-03-10 07:33:39 +01:00
LeopoldTal
b6e6970e0e
use electron builtin to open links (#897)
When opening a link on standalone, use [shell.openExternal](https://github.com/electron/electron/blob/master/docs/api/shell.md#shellopenexternalurl-options). This works cross-platform, and looks less suspicious to antivirus than explicitly shelling out.
2020-10-31 12:21:39 +01:00
tobspr
c4d709b8e4 Add steampipe files and upgrade electron 2020-09-29 19:07:48 +02:00
Baptiste Augrain
2e08f17e15 add missing macos icon 2020-06-15 02:19:39 +02:00
tobspr
bf93ded6cf Increased icon visibility for windows builds 2020-06-03 16:16:41 +02:00
Max Klenk
e6567c15df add travis config to build standalone bundle on multiple platforms 2020-05-28 16:08:08 +02:00
tobspr
58442eaeec Prepare standalone build 2020-05-21 13:05:21 +02:00