1. Hard Chip
  2. News

Hard Chip News

Quick Patch Notes v0.1.7.148

  • [p]NEW updated 512Bytes Memory demo;[/p]
  • [p]NEW update of schematics' style;[/p]
  • [p]SIM Explicit thread preference to run from in mediator. This is a first pass expliciting said preference in many flows (but not all cause there are 600+ of them). Some long-running operations now don't freeze the UI anymore. Drop in performance expected, aiming to fix the lasting "no longer able to edit" bug first.[/p]
  • [p]CX Bonus stages path is revised.[/p]
  • [p]CX Tristate (Bit Transmitter) grades are tighter now.[/p]
  • [p]CX Mux2to1grades revised;[/p]
  • [p]UX Loading modal on large file loading;[/p]
  • [p]UX Busy indicator on (very) slow or crashed sim (yellow/red/black);[/p]
  • [p]UX Faster/Fast/Balanced/Quality presets in graphics options;[/p]
  • [p]MI new Open Community Gauntlet Announcement 28feb;[/p]
  • [p]FIX tentative fix for "no longer able to edit" bug and mos center block appearing;[/p]
  • [p]FIX Bonus screen slow/no loading on fast computers outputting more than 1000 fps (no vsync or fps limit set);[/p]
  • [p]FIX "Compact the inverter" wasn't saving local best;[/p]
  • [p]FIX Select block from the build menu is conserved after switching back from Delete mode.[/p]
  • [p]FIX while holding mmb and escaping, the mouse movement would get locked.[/p][p][/p]
[p]Legends: NEW new element/feature, FIX bug/error fix, UX User eXperience, CX Challenge eXperience, TLS localization, MI Miscellaneous, SRV server side code, INF infrastructure, -EXP experimental build[/p]

Update 64 Faster Simulation, Cleaner Workflow, Tougher (Fairer) Challenges!

[p]Unreasonably large open designs can run * moderately * now!

Greetings, Hard Chip players! [/p][p]Oh boy, it has already been 2 months since the last Dev Update!? I'm late😬! Here we go for a larger-than-usual update to catch up a bit. Simulation speed is always in search for more optimizations. Open Community Gauntlets is coming online alongside the continuation of Foundry Gauntlets. You can import chips directly into other chips from the Blueprint Library, the pause menu got a revision, the validation stack keeps getting stricter (and harder to cheese), and so many other things.[/p][p]Let’s jump into what has happened from 0.1.7.128 to 0.1.7.147: [/p][p][/p][p][/p][h2]1. It’s Over 9000! Uncapped Tick Speed, Stabilization & Performance[/h2][p][/p][p]Simulation now has new speed presets (1kT, 2kT, 4kT ticks/s) so you can push performance as you see fit, plus the ability to go beyond with an uncapped tick rate if your machine can handle it![/p][p]Want to see all the MOS and signal propagation sweetness? 250T/s is a good spot. Just want to see the result of the last optimization you made? Uncap those ticks/s and you’ll hit the Performance Report almost immediately!
[/p][p]Running your AND stage at 49103 ticks/s is of the utmost importance![/p][p][/p][p]On the engine side, a lot of work went into doing less work: MOS states are evaluated only when a state change actually ā€œtouchesā€ a MOS gate, large segment selection was simplified (and is much faster), and other optimizations were made. You’ll also see a live ticks/s counter (in extended info) and improved escape/input-lock behavior around the Performance Report windows. A few nasty stability issues got attention too (white screen of death, camera bounds, crash fixes). [/p][p][/p][p]Now usable to build colored segments mode![/p][p][/p][p]Performance still has to go faster, though; simulation is plenty for the current 65 campaign and bonus stages, but you can already feel the limits on large stages like the 64-bit adder or with giant sandbox designs. The work continues as always, but now you can definitely reach new heights with the current state of HC![/p][p][/p][p]⚔ Changelog:[/p]
  • [p]NEW It's over 9000 ticks/s!!! Uncapped tick speed + 1kT, 2kT and 4kT/s speeds[/p]
  • [p]PERF Simulation evaluates MOS state only MOS gate is being "touched" by a state change.[/p]
  • [p]PERF Large segment selection simplified and (way) faster run speed[/p]
  • [p]PERF Highlight points are shown progressively when more than 100, improved lifecycle for speed (tested with unreasonable 10 of thousands);[/p]
  • [p]UX Current live ticks/s show when extended live info option is on[/p]
  • [p]UX Escape behavior locks inputs for the editor temporarily, allow escaping/space/enter from perf report windows[/p]
  • [p]UX Color segment feature improved (and/or fixed? cause now more usable to actually build with).[/p]
  • [p]FIX White screen of death, evaluating/cancelling transformations separately;[/p]
  • [p]FIX Camera out of bound in overworld;[/p]
  • [p]FIX Crash to desktop tentative fix[/p]
  • [p]FIX editor "frozen" soft lock tentative fix[/p]
  • [p]FIX Rebindable Left Ctrl for upward build now working, Left Ctrl is not a reserved key anymore[/p]
  • [p]FIX Crash in benchmarks;[/p]
  • [p]MI Simplified loading schematics;[/p]
  • [p]MI Debug shaders fix[/p]
  • [p]MI Managing runner thread cancelling itself[/p]
[p][/p][p][/p][h2]2. Blueprint Workflow, Import Chips Into Chips + Better Probes[/h2][p][/p][p]Blueprints got a new intended workflow: every time you create a blueprint, existing probes, inputs, and outputs are saved as probes into the new blueprint, always. Then, when you import, all probes are recreated by default. Effectively serving as labels on what is what, so you won’t have to guess if that wire is input A or B anymore! And when you’re done with those indications, you can remove probes the same way you would remove a block: Alt+Click them to remove them! You know your blueprints by heart? You can check the option to not add those labels.

Blueprints will always have probes integrated for quick reuse! Here from the website.[/p][p][/p][p]You can also now import a chip into another chip directly from the Blueprint Library. Import/export is being reorganized around Blueprint mode (including moving the buttons out of the Toolbox) and now manages multiple formats (blueprints, save files, binary/text versions). Probes keep getting love too: Backspace focuses the probe text input, and Ctrl+Click can set inputs to Neutral.

Importing from the Blueprint Library directly into your current chip![/p][p][/p][p]šŸ“¦ Changelog:[/p]
  • [p]NEW Import chip into another one from BlueprintLibrary in the Blueprint mode;[/p]
  • [p]UX Probes are always included in blueprints, set added onto the chip level from Blueprint mode;[/p]
  • [p]UX Shortcut to delete Probes with Alt + Click[/p]
  • [p]UX move import/export buttons from Toolbox to Blueprint mode[/p]
  • [p]UX "Include probes" options when saving a blueprint;[/p]
  • [p]UX Backspace to focus on the text input for a probe[/p]
  • [p]UX Ctrl Click to set Neutral to any inputs, or use the allow neutral;[/p]
  • [p]FIX losing name while importing;[/p]
  • [p]FIX import PTB file from the library;[/p]
  • [p]FIX wrong delete/clear probes behavior;[/p]
  • [p]FIX probes weren't placed when pasting a blueprint resized the die[/p]
  • [p]MI Import/export add inputs/outputs as labels if it is a chip file[/p]
  • [p]MI Export level from blueprint menu in WTB by default, Ctrl to export as a HCDrive;[/p]
[p][/p][p][/p][h2]3. Pause Menu Revision & Player Experience Improvements[/h2][p][/p][p]The pause menu has been revised: graphics settings are now editable in-game, with a clear warning that some settings require an editor restart to take effect. You can also disable the terminal glitch effect, MOS blocks can distinct in the build menu options (if you like the idea of rebuilding your mosfets yourself!), and a bunch of small player/editor UX improvements landed too (bit-number tooltips for inputs/probes, hiding expected values while you’re actively touching inputs during validation, bonus screen layout tweaks, and new tips).[/p][p][/p][p]Pause menu now from the editor (basically the same as the main menu one), and the distinct MOS blocks in the build menu.[/p][p] [/p][p]šŸŽ›ļø Changelog:[/p]
  • [p]NEW Distinct MOS blocks in build menu options[/p]
  • [p]NEW Pause menu revision, graphics settings now editable with a warning that some settings will require an editor restart to take effect. All tabs updated as well[/p]
  • [p]NEW Terminal glitch effect can be disabled in Options;[/p]
  • [p]NEW Workstation model[/p]
  • [p]UX hide expected value on the inputs when the inputs are touched to avoid confusion on which validation you are in;[/p]
  • [p]UX change labels of inputs and probes to show a tooltip with the bit number instead of the button itself (no more _a, _b, etc);[/p]
  • [p]UX Bonus missing for The Merger;[/p]
  • [p]UX Bonus screen layout improvement[/p]
  • [p]UX Bonus screen sizing and layout to fit the terminal!;[/p]
  • [p]UX Hide report when reset/rerun shortcut pressed[/p]
  • [p]UX new tips[/p]
  • [p]FIX Unlock NAND Achievement in main when coming from the demo;[/p]
  • [p]FIX Dark workstation asset;[/p]
  • [p]FIX Missing schematics in built-in levels[/p]
  • [p]MI Error modal unified[/p]
  • [p]MI Restores probes from stage file on restart the level[/p]
  • [p]MI Tutorial probe++ (still hidden);[/p]
  • [p]MI Disclaimer can't disable bug report in XPRMTL branch;[/p]
  • [p]MI Esc stops validation[/p]
[p][/p][p][/p][h2]4. Gauntlets, Anti-Cheese, Challenge Fixes, Leaderboards, GraphV2, CSE and Revalidation Infrastructure[/h2][p][/p][p]Competitive building keeps expanding. It would be an understatement to say gauntlets keep improving the editor and the Community Stage Editor (CSE): stabilization, new tools, anti-cheese approaches, graphs, leaderboards, and more. And if you’re on Discord, you’ve probably noticed it too, when a gauntlet is running, most conversations end up in the #gauntlet channel. [/p][p]I’m not the most competitive person myself, but I love the spirit (and friendly rivalry/cooperation) that comes with these events.

All past gauntlets are accessible upon unlocking the Past Gauntlets screen by finishing Chapter 1, they are bigger challenges! [/p][p][/p]
  • [p]FGR continues with Rev1 and new stages (including a memory bank path), and it remains a great place to test experimental mechanics.[/p]
  • [p]Open Community Gauntlet (OCG) is new, and I’m really excited about it: players on the experimental branch use the CSE to design a full set of puzzles. They’re tougher (no surprise—those players are among the best), but the vibe stays friendly. A new one is in the works, and I hope to see you on the leaderboard![/p]
  • [p]Rewards groundwork is in: the Garnet theme can be activated through an online/offline service.[/p]
  • [p]Revalidation becomes a first-class citizen server-side (now activable per stage).[/p]
  • [p]A richer pool of validation steps can be used after random test phases.[/p]
  • [p]Adders got multiple fixes for the incomplete truth-table ā€œcheeseā€.[/p]
  • [p]The 64-bit content gets a revision and more anti-cheese (including carry-in).[/p]
  • [p]A new ā€œrandom post validation phaseā€ can be activated in the CSE, and validation phases/steps are being regrouped.[/p]
  • [p]A Leaderboard service is being introduced for upcoming gauntlets (and some other ideas I have in mind).[/p]
  • [p]GraphV2 rolls in with new voting rules (4 votes per player, 1 vote per metric) and dynamic cutoffs; the Performance Report will show more intuitive graphs.[/p]
  • [p]Server-side revalidation becomes more robust: parallel workers, adaptive tick limits for long-but-valid solutions, and clearer admin command entry points (wildcards, filtering, clear validated, etc.).[/p]
[p]All this to try to make, the build more fun, fair, intuitive and legit! Work continues on this of course, it isn't done just yet (will it ever be ?)! [/p][p][/p][p]Server for rewards (upon winning a gauntlet), also will be used for the creation of challenges and gauntlets by the community through the Community Stage Editor![/p][p] More phases, stricter checks, fewer loopholes with a distinct power-up phase, a different phase to combine complex test steps into a more readable form, and a random post phase to avoid cheese![/p][p][/p][p]One of the many new stages due to the gauntlet![/p][p][/p][p]šŸ† Changelog:[/p]
  • [p]NEW GraphV2, new rules: 4 votes per player, 1 vote per metric, top 90% when >100 total subs or 99% >10 or 100% > 0;[/p]
  • [p]NEW Open Community Gauntlet Event logic;[/p]
  • [p]NEW Activable online/offline reward logic (Gauntlet Garnet theme);[/p]
  • [p]NEW Float/Loss recorded and revalidable by the server;[/p]
  • [p]NEW random post validation phase activable in CSE[/p]
  • [p]NEW Validation phases regrouping steps;[/p]
  • [p]SIM Extended set of validation steps pool for post random test phase[/p]
  • [p]SIM Simulation now calculates float and loss metrics directly and per phases (now perf report shows only main phase loss and float when there is pwrup or rng phases);[/p]
  • [p]CX OCGv0 first week stage: 2 Bit Subtract![/p]
  • [p]CX OCGv0 2nd week stage: 2 Bit Subtract If Above Or Equal![/p]
  • [p]CX OCGv0 3rd week stage: 2 Bit Unsigned Full Divide![/p]
  • [p]CX FGR1 2nd week stage: Gated Dlatch OE Row Col Sel![/p]
  • [p]CX FGR1 3rd week stage: 2x2 Bit Gated Dlatches![/p]
  • [p]CX FGR1 4th week stage: 4x8 Bit DLatches Memory Bank![/p]
  • [p]CX 64Bit revised, more anticheese (try to cheese it) and now with carry in (BREAKING-CHANGE)[/p]
  • [p]CX Incomplete truth table cheese for 4,8,16 Bits adders;[/p]
  • [p]CX Missing CarryOut label in 8bit adder schematic;[/p]
  • [p]CX 8bit Full Adder never had its schematics![/p]
  • [p]CX Naming in 4x8BitLatchesMemoryBank;[/p]
  • [p]CX ASIC-type cheese on the 2x2BitGatedDLatches fix[/p]
  • [p]CX Cheese DlatchOERowColSelf fix;[/p]
  • [p]CX Schematics for 2x2 Gated Dlatches;[/p]
  • [p]FIX "The merger" stage can reload past save without enforcing input to the left;[/p]
  • [p]FIX Graph2 with spans less than 15 (aka AND OR not showing the 6mos solution);[/p]
  • [p]FIX Adder locked;[/p]
  • [p]FIX Frozen Gauntlet screen on fast computer;[/p]
  • [p]FIX Achievements active with verified/official community stage;[/p]
  • [p]FIX truth table had a non-blocking mistake for a stage.[/p]
  • [p]FIX Submissions ingestion delays;[/p]
  • [p]FIX "Should be X and now is _" (undefined) when one bit is neutral on the expected output number overlays;[/p]
  • [p]FIX FGR1-w3 Cheese merge cell[/p]
  • [p]FIX Match holdvalue for multibits output as before, for now... ;[/p]
  • [p]FIX Release gauntlet hidden + revalidation allowlist[/p]
  • [p]FIX No progression checkmark on the 2x2BitGatedDLatches[/p]
  • [p]SRV Leaderboard service (for upcoming gauntlet)[/p]
  • [p]SRV Graphs, set the cutoff threshold calculation to player count and not submissions count;[/p]
  • [p]SRV Adding more stats in graph2 schema for the website to use;[/p]
  • [p]SRV Graphv2 service update and cdn logic updated;[/p]
  • [p]SRV Dedicated Leaderboards host worker;[/p]
  • [p]SRV Activable garnet theme through a service as reward for participating[/p]
  • [p]SRV CommunityStages API updates;[/p]
  • [p]SRV More indicative labels;[/p]
  • [p]SRV not skipping first score in the batch anymore;[/p]
  • [p]SRV Optimized DB client and lazy connection for swarm of revalidation[/p]
  • [p]SRV fix and tweak for running worker in parallel;[/p]
  • [p]SRV validation tick limits adapt to long running -but valid- solutions that passed the client[/p]
  • [p]SRV Deployable active revalidation for gauntlet (reconcile cmd and forever behavior)[/p]
  • [p]SRV fix auto-stale in validation;[/p]
  • [p]SRV entry point for cmd line for admin task;[/p]
  • [p]SRV Wildcard for validation cmdline;[/p]
  • [p]SRV Filtering to ease up the db;[/p]
  • [p]SRV CD field source of truth in object file instead[/p]
  • [p]SRV world score live mode, working for DLatchCell gauntlet[/p]
  • [p]SRV Clear validated command;[/p]
  • [p]INF Compose update;[/p]
  • [p]UX show random phase steps in truth table[/p]
  • [p]MI Extend FGR1 visibility window in main menu, disabled in 1 week after end of event;[/p]
  • [p]MI Scripts for community stages deploy;[/p]
  • [p]MI Mirror -> Duplicator, plus prep work for write to clipboard;[/p]
  • [p]MI Gauntlet week 1-3 instead 0-3[/p]
  • [p]MI Adding FGR1 into past gauntlet;[/p]
  • [p]MI Power up phase on by default in the CSE[/p]
  • [p]MI Open Community now in Past Gauntlets + logic wip for future events[/p]
  • [p]MI Gauntlet level adjustments;[/p]
  • [p]MI References assertings ticks as prerecorded scores.[/p]
  • [p]MI Updated local snapshot of graphs for players with restricted internet[/p]
  • [p]MI Verifying challenge files integrity;[/p]
  • [p]MI CSE and long for storing values in stages;[/p]
  • [p]MI Specific past gauntlet can be unlocked if participated even if chapter 1 isn't completed.[/p]
  • [p]MI Adding leaderboard service to sln;[/p]
  • [p]MI Script with versions;[/p]
  • [p]MI Increasing text limit for desc in CSE[/p]
  • [p]MI Deployment script cleanup;[/p]
  • [p]MI new maximum tick for submissions: 30k;[/p]
[p][/p][p][/p][h2]5. Localization and upcoming UI Scale.[/h2][p][/p][p]Translations and text polish continue, and thanks to two passionate players, Japanese and Simplified Chinese are now in the pipeline! Both are already well underway, but the current UI approach has some hard limits: generating the full Japanese charset is already at the edge of what the system can handle (and it’s not very efficient), and Simplified Chinese just breaks it.

Because of that, I started exploring new UI options. I already found a .NET UI library that should let me iterate faster and handle localization more flexibly. And there’s a nice bonus: it should also make UI scaling and DPI awareness much more flexible. 4K (and other high-resolution) players have been asking for better readability for a while, and I’m keeping that in mind as I work toward this UI upgrade. Hopefully I’ll have something to show next update!

[/p][p]šŸŒ Changelog:[/p]
  • [p]WIP zh-hans Simplified Chinese localization[/p]
  • [p]WIP ja Japanese localization[/p]
  • [p]TLS chapter vs chapitre in English;[/p]
  • [p]TLS french spacing issue;[/p]
  • [p]TLS Italiano missing common keys;[/p]
  • [p]TLS new tips and tooltip translated;[/p]
  • [p]FIX Wrong font size regression;[/p]
  • [p]MI Prep work UI updates;[/p]
[p][/p][p]
---[/p][p]
[/p][p]That’s for this 64th Update! This one is all about speed (literal ticks/s), better workflows (blueprints & probes), and the competitive ecosystem (OCG + FGR1 + revalidation + graphs).
[/p][p]One last word: stay tuned as a new Open Community Gauntlet is in the making! More details will come soon.
[/p][p]Spotted something off? Hit me up on Discord. Your reports and feedback are what keep this machine running!
[/p][p]Thank you so much for playing Hard ChipšŸ™! Now go break some speed records! [/p]

Quick Patch Notes v0.1.7.147

  • [p]NEW It's over 9000 ticks/s!!! uncapped tick speed and 1kT, 2kT and 4kT/s speeds[/p]
  • [p]PERF Simulation evaluates MOS states only when the MOS gate is being "touched" by a state change. Gains vary depending on the scenarios; some tests showed 10% on a modest laptop, some other tests showed way more. [/p]
  • [p]UX Current live ticks/s show when the extended live info option is on[/p]
  • [p]UX Escape behavior locks inputs for the editor temporarily, allowing escaping/space/enter from perf report windows and a cleaner Pause Menu[/p]
  • [p]FIX Crash to desktop tentative fix[/p]
  • [p]FIX editor "frozen" soft lock tentative fix[/p]
  • [p]FIX Rebindable Left Ctrl for upward build now working, Left Ctrl is not a reserved key anymore[/p]
  • [p]SRV Leaderboard service (for upcoming gauntlet)[/p]
  • [p]MI Managing runner thread cancelling itself without deadlock (for dev purpose really) [/p]
  • [p]MI References assert that ticks are prerecorded scores. (verifying the simulation is consistent between releases)
    [/p]
[p]Legends: NEW new element/feature, FIX bug/error fix, UX User eXperience, CX Challenge eXperience, TLS localization, MI Miscellaneous, SRV server side code, INF infrastructure, -EXP experimental build[/p]

Quick Patch Notes v0.1.7.146

  • [p]NEW Terminal glitch effect can be disabled in Options.[/p]
  • [p]NEW Pause menu revision, graphics settings are now editable with a warning that some settings will require an editor restart to take effect. All tabs updated as well.[/p]
  • [p]NEW Distinct MOS blocks in build menu options;[/p]
  • [p]CX 64Bit revised, more anticheese (try to cheese it) and with carry in;[/p]
  • [p]MI Updated local snapshot of graphs for players with restricted internet; [/p]
  • [p]MI Verifying challenge files' integrity;[/p]
  • [p]MI Simplified loading schematics;[/p]
  • [p]MI Error modal unified;[/p]
  • [p]MI CSE and long for storing values for input/output validation steps in stages (allow using very large numbers as expected values and input values);[/p]
  • [p]PERF Large segment selection simplified and (way) faster run speed;[/p]
  • [p]PERF Highlight points are shown progressively when more than 100, improved lifecycle for speed (tested with unreasonnable 10 of thousands);[/p]
  • [p]TLS chapter vs chapitre in english;[/p]
  • [p]SRV Graphs, set the cutoff threshold calculation to player count and not submission count;[/p]
[p][/p][p]Legends: NEW new element/feature, FIX bug/error fix, UX User eXperience, CX Challenge eXperience, TLS localization, MI Miscellaneous, SRV server side code, INF infrastructure, -EXP experimental build[/p]

Quick Patch Notes v0.1.7.145

  • [p]SIM Extended set of validation steps pool for post-random test phase;[/p]
  • [p]UX hide expected value on the inputs when the inputs are touched to avoid confusion on which validation you are in;[/p]
  • [p]FIX Incomplete truth table cheese for 4,8,16 Bits adders;[/p]
  • [p]FIX The merger can reload past save without enforcing input to the left;[/p]
  • [p]FIX Missing CarryOut label in 8bit adder schematic;[/p]
  • [p]FIX Wrong font size regression;[/p]
  • [p]FIX Specific past gauntlet can be unlocked if participated in, even if chapter 1 isn't completed.[/p]
  • [p]MI Tutorial probe++ (still hidden);[/p]
  • [p]MI Prep work UI updates;[/p]