Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
A completed circuit with an external one-tick pulse generator (as in, it is not included) can be found here for reference: https://steamcommunity.com/sharedfiles/filedetails/?id=2705444853
The simple module above should toggle the output pin every time the input pin receives a one-tick pulse (the single tick is important because of the nature of XOR-gate memory. It is loop device, and the XOR gates will shut off due to two inputs being high if the pulse is too long. This results in a repeating on-off state for as long as the pulse continues). The counter should count up one binary value every time (using the grayscale-colored outputs) a one-tick pulse is sent on the input (red pin)
No output is given on either circuit whatsoever. They are completely unresponsive
Thanks for the thorough description!
I've experimented a bit and it seems as if the one-tick pulse generator within the scanned circuit is the culprit. Skipping step 4 yields a working circuit for me.
I tested the T-Latch and the counter which worked fine on my side (without using a one-tick pulse generator in the scanned circuit) 🤔.
Could you do me a favour and test the CC mod with this circuit? It should be exactly the same as yours, except that it lacks the one-tick pulse generator.
https://steamcommunity.com/sharedfiles/filedetails/?id=2706115741
No worries! Glad I was able to help you out :)
And it had a 1-tick generator...
Reproduction Steps
1. Create 4x4 Plate of Instant Gates
2. Copy on lift and weld 4 together to get a larger square
3. Copy new square
4. Repeat Steps 2 and 3
5. At some point it starts lagging
Now you may be thinking that this will just lag anyways and yes, but now try again with unmodded gates and repeat until you have the same number of unmodded gates as you had modded gates (after deleting the old gates of course). If your computer acts the same way as mine the same number of unmodded gates shouldn't lag.
Is this something that you can fix? If not that is understandable but it would be nice to be able to create large creations like this with only the normal amount of lag.
Also something to note, I was just sitting in a world with practically nothing loaded with the mod active while writing this and I noticed that my GPU is at maximum usage. Not sure if this is the mod's fault or just scrap mechanic.
Thanks in advance for any progress on this front.
As for the built in limit of 255. What about making another block that copys all outputs of the input circuit block. Idk if that would work but it would look like: Inputs -> Circuit block -> Several "output extenders" -> Already existing output blocks of varying colors
Idk if that is feasible but it would be great if it was.
Whether or not you can do anything regarding the output limit it is nice to know that you are working on what you think you can work on.
I understand that people are sometimes busy with what is needed and I wish you luck on whatever is holding you up.
Wholesomeness be with you!
If you have some kind of idea that could improve how users interface with the mod, I'd gladly read about it!
Appreciate the nice words!
It's mainly university courses that I'm busy with. I'm trying to organise my time so I can get to doing other things, but I'm bad at it 😂
I ran tests with ~16k instant logic gates my framerate dropped to around 30. I selectively changed what code was being run and - against my expectation - experienced a greater frame drop with an almost empty script 🤣
At least this shows that Scrap Mechanic suffers from poor performance in general and lacks the necessary optimisation. I suspect this behaviour manifests when a sufficient amount of calls to the part's `update` callback method are invoked adding significant computational overhead.
This could explain why the compressed circuit outperforms fully fledged instant gate circuits, since it's only a single call to simulate the whole circuit. It's likely the vanilla implementation of logic gates is also somewhat optimised which explains the performance discrepancy to scripted parts.
To conclude: I can't do much to optimise for higher frame rates. The most I've got out were around +5 FPS with a small change, but this might be insignificant considering different PC specifications for the general player base.
I also can't seem to see the pin number of any instant gates, only un-modded gates.
I've also noted that the unmodded gate connection bubble (the little blue circle) is smaller than all the other connection bubbles (including the instant gates), so if you could make that connection bubble smaller then that would be a QOL improvement.
Sometimes when I have a logic system that has some unmodded memory bits (XOR LOOP) interspersed with instant gates (Which happens with my working binary counter design) that when I load the world I will often find that seemingly only one or two of the XOR's in the loop got a pulse (Which makes any XOR memory bit turn into a clock). If I had to guess this is because instant gates load a few ticks of logic before the world/creation has finished loading. I don't think I've seen this happen with instant gates though so good job on that front.
This mod has passed The Modpack on my list of favorite Scrap Mechanic mods so good job and keep up the good work!
As always have a great time and stay wholesome!